code: public <E> List<E> find(Class<E> entityClass, Map<String, String> superColumnMap,
          CassandraDataHandler dataHandler) {
          List<E> entities = null;
          String entityId = null;
          try {
              EntityMetadata entityMetadata =
                  KunderaMetadataManager.getEntityMetadata(kunderaMetadata, getPersistenceUnit(), entityClass);
              entities = new ArrayList<E>();
              for (String superColumnName : superColumnMap.keySet()) {
                  entityId = superColumnMap.get(superColumnName);
                  List<SuperColumn> superColumnList =
                      loadSuperColumns(entityMetadata.getSchema(), entityMetadata.getTableName(), entityId,
                          new String[] { superColumnName.substring(0, superColumnName.indexOf("|")) });
                  E e = (E) dataHandler.fromThriftRow(entityMetadata.getEntityClazz(), entityMetadata,
                      new DataRow<SuperColumn>(entityId, entityMetadata.getTableName(), superColumnList));
                  if (e != null) {
                      entities.add(e);
                  }
              }
          } catch (Exception e) {
              log.error("Error while retrieving records from database for entity {} and key {}, Caused by: . ",
                  entityClass, entityId, e);
              throw new KunderaException(e);
          }
          return entities;
      }
docs: Find.
  
  @param <E>
  the element type
  @param entityClass
  the entity class
  @param superColumnMap
  the super column map
  @param dataHandler
  the data handler
  @return the list