Cumulus4j API
Class IndexEntryFactoryRegistry

  extended by

public class IndexEntryFactoryRegistry
extends Object

Registry responsible for the extension-point

This registry maps an IndexEntryFactory to a java-type or a combination of java-, jdbc- and sql-type.

There is one instance of IndexEntryFactoryRegistry per Cumulus4jStoreManager.

Marco หงุ่ยตระกูล-Schulze - marco at nightlabs dot de

Constructor Summary
IndexEntryFactoryRegistry(Cumulus4jStoreManager storeMgr)
          Create a new registry instance.
Method Summary
 Set<Class<? extends IndexEntry>> getIndexEntryClasses()
 IndexEntryFactory getIndexEntryFactory(ExecutionContext executionContext, FieldMeta fieldMeta, boolean throwExceptionIfNotFound)
          Get the appropriate IndexEntryFactory subclass instance for the given FieldMeta.
 IndexEntryFactory getIndexEntryFactoryForContainerSize()
          Get the special IndexEntryFactory used for container-sizes.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public IndexEntryFactoryRegistry(Cumulus4jStoreManager storeMgr)
Create a new registry instance.

storeMgr - the owning store-manager.
Method Detail


public IndexEntryFactory getIndexEntryFactory(ExecutionContext executionContext,
                                              FieldMeta fieldMeta,
                                              boolean throwExceptionIfNotFound)
Get the appropriate IndexEntryFactory subclass instance for the given FieldMeta.

executionContext - the context.
fieldMeta - either a FieldMeta for a primary field or a sub-FieldMeta, if a Collection element, a Map key, a Map value or similar are indexed.
throwExceptionIfNotFound - throw an exception instead of returning null, if there is no IndexEntryFactory for the given fieldMeta.
the appropriate IndexEntryFactory or null, if none is registered and throwExceptionIfNotFound == false.


public IndexEntryFactory getIndexEntryFactoryForContainerSize()
Get the special IndexEntryFactory used for container-sizes. This special index allows using Collection.isEmpty(), Collection.size() and the like in JDOQL (or "SIZE(...)" and the like in JPQL).

the special IndexEntryFactory used for container-sizes.


public Set<Class<? extends IndexEntry>> getIndexEntryClasses()

Cumulus4j API

Copyright © 2013 NightLabs Consulting GmbH. All Rights Reserved.