code: List getAssociatedEntitiesFromIndex(Class owningClazz, Object entityId, Class<?> childClass, Client childClient)
      {
          List associatedEntities;
          IndexManager indexManager = childClient.getIndexManager();
  
          Map<String, Object> results = indexManager != null ? indexManager.search(owningClazz, childClass, entityId)
                  : new HashMap<String, Object>();
          Set rsSet = results != null ? new HashSet(results.values()) : new HashSet();
  
          if (childClass.equals(owningClazz))
          {
              associatedEntities = (List<Object>) childClient.findAll(childClass, null, rsSet.toArray(new Object[] {}));
          }
          else
          {
              associatedEntities = (List<Object>) childClient.findAll(childClass, null, rsSet.toArray(new Object[] {}));
          }
          return associatedEntities;
      }
docs: Retrieves associated entities from secondary index. There are two
  alternatives here:
  
  1. Via running Lucene query into Lucene powered secondary index. 2.
  Searching into a secondary index by custom secondary index class provided
  by user.
  
  @see PersistenceProperties#KUNDERA_INDEX_HOME_DIR
  @see PersistenceProperties#KUNDERA_INDEXER_CLASS
  
  TODO: Which secondary index to use should be transparent. All we
  should bother about is indexer.index(), indexer.search() etc.