Package org.datanucleus.store.mongodb
Class MongoDBStoreManager
- java.lang.Object
-
- org.datanucleus.properties.PropertyStore
-
- org.datanucleus.store.AbstractStoreManager
-
- org.datanucleus.store.mongodb.MongoDBStoreManager
-
- All Implemented Interfaces:
org.datanucleus.store.schema.SchemaAwareStoreManager
,org.datanucleus.store.StoreManager
public class MongoDBStoreManager extends org.datanucleus.store.AbstractStoreManager implements org.datanucleus.store.schema.SchemaAwareStoreManager
-
-
Field Summary
Fields Modifier and Type Field Description static String
CAPPED_SIZE_EXTENSION_NAME
-
Fields inherited from class org.datanucleus.store.AbstractStoreManager
connectionMgr, flushProcess, namingFactory, nucleusContext, persistenceHandler, queryMgr, schemaHandler, storeDataMgr, storeManagerKey, valueGenerationMgr
-
Fields inherited from interface org.datanucleus.store.StoreManager
OPTION_APPLICATION_COMPOSITE_ID, OPTION_APPLICATION_ID, OPTION_DATASTORE_ID, OPTION_DATASTORE_TIME_STORES_MILLISECS, OPTION_DATASTORE_TIME_STORES_NANOSECS, OPTION_DATASTORE_TIMEOUT, OPTION_NONDURABLE_ID, OPTION_ORM, OPTION_ORM_EMBEDDED_ARRAY, OPTION_ORM_EMBEDDED_ARRAY_NESTED, OPTION_ORM_EMBEDDED_COLLECTION, OPTION_ORM_EMBEDDED_COLLECTION_NESTED, OPTION_ORM_EMBEDDED_MAP, OPTION_ORM_EMBEDDED_MAP_NESTED, OPTION_ORM_EMBEDDED_PC, OPTION_ORM_EMBEDDED_PC_NESTED, OPTION_ORM_FOREIGN_KEYS, OPTION_ORM_INHERITANCE_COMPLETE_TABLE, OPTION_ORM_INHERITANCE_JOINED_TABLE, OPTION_ORM_INHERITANCE_SINGLE_TABLE, OPTION_ORM_SECONDARY_TABLE, OPTION_ORM_SERIALISED_ARRAY_ELEMENT, OPTION_ORM_SERIALISED_COLLECTION_ELEMENT, OPTION_ORM_SERIALISED_MAP_KEY, OPTION_ORM_SERIALISED_MAP_VALUE, OPTION_ORM_SERIALISED_PC, OPTION_QUERY_CANCEL, OPTION_QUERY_JDOQL_BITWISE_OPS, OPTION_QUERY_JDOQL_BULK_DELETE, OPTION_QUERY_JDOQL_BULK_INSERT, OPTION_QUERY_JDOQL_BULK_UPDATE, OPTION_QUERY_JPQL_BULK_DELETE, OPTION_QUERY_JPQL_BULK_INSERT, OPTION_QUERY_JPQL_BULK_UPDATE, OPTION_TRANSACTION_ACID, OPTION_TXN_ISOLATION_READ_COMMITTED, OPTION_TXN_ISOLATION_READ_UNCOMMITTED, OPTION_TXN_ISOLATION_REPEATABLE_READ, OPTION_TXN_ISOLATION_SERIALIZABLE, RELATION_IDENTITY_STORAGE_PERSISTABLE_IDENTITY
-
-
Constructor Summary
Constructors Constructor Description MongoDBStoreManager(org.datanucleus.ClassLoaderResolver clr, org.datanucleus.PersistenceNucleusContext nucleusCtx, Map<String,Object> props)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
createDatabase(String catalogName, String schemaName, Properties props)
void
createSchemaForClasses(Set<String> classNames, Properties props)
void
deleteDatabase(String catalogName, String schemaName, Properties props)
void
deleteSchemaForClasses(Set<String> classNames, Properties props)
String
getClassNameForObjectID(Object id, org.datanucleus.ClassLoaderResolver clr, org.datanucleus.ExecutionContext ec)
Collection<String>
getSupportedOptions()
String
getValueGenerationStrategyForNative(org.datanucleus.metadata.AbstractClassMetaData cmd, int absFieldNumber)
void
manageClasses(String[] classNames, org.datanucleus.ClassLoaderResolver clr, com.mongodb.DB db)
void
manageClasses(org.datanucleus.ClassLoaderResolver clr, String... classNames)
org.datanucleus.store.query.Query
newQuery(String language, org.datanucleus.ExecutionContext ec)
org.datanucleus.store.query.Query
newQuery(String language, org.datanucleus.ExecutionContext ec, String queryString)
org.datanucleus.store.query.Query
newQuery(String language, org.datanucleus.ExecutionContext ec, org.datanucleus.store.query.Query q)
boolean
supportsValueGenerationStrategy(String strategy)
Accessor for whether this value strategy is supported.void
validateSchemaForClasses(Set<String> classNames, Properties props)
-
Methods inherited from class org.datanucleus.store.AbstractStoreManager
close, deregisterAllStoreData, enableSchemaGeneration, getApiAdapter, getBooleanObjectProperty, getBooleanProperty, getBooleanProperty, getConnectionManager, getConnectionPassword, getDefaultObjectProviderClassName, getExtent, getFlushProcess, getIntProperty, getMetaDataManager, getNamingFactory, getNextValueForValueGenerator, getNucleusConnection, getNucleusContext, getPersistenceHandler, getPropertiesForValueGenerator, getProperty, getQueryManager, getSchemaHandler, getStoreDataForClass, getStoreManagerKey, getStringProperty, getSubClassesForClass, getSupportedQueryLanguages, getValueGenerationManager, getValueGenerationStrategyValue, getValueGeneratorForMember, hasProperty, isJdbcStore, isValueGenerationStrategyDatastoreAttributed, logConfiguration, manageClassForIdentity, managesClass, newStoreData, printInformation, registerConnectionMgr, registerStoreData, resetSchemaGeneration, supportsQueryLanguage, unmanageAllClasses, unmanageClass, useBackedSCOWrapperForMember
-
Methods inherited from class org.datanucleus.properties.PropertyStore
getFrequentProperties, hasPropertyNotNull, setPropertyInternal
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.datanucleus.store.StoreManager
getConnectionDriverName, getConnectionFactory, getConnectionFactory2, getConnectionFactory2Name, getConnectionFactoryName, getConnectionURL, getConnectionUserName, getDatastoreDate, getNativeQueryLanguage, getNucleusSequence, getQueryCacheKey, transactionCommitted, transactionRolledBack, transactionStarted, usesBackedSCOWrappers
-
-
-
-
Field Detail
-
CAPPED_SIZE_EXTENSION_NAME
public static final String CAPPED_SIZE_EXTENSION_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getSupportedOptions
public Collection<String> getSupportedOptions()
- Specified by:
getSupportedOptions
in interfaceorg.datanucleus.store.StoreManager
- Overrides:
getSupportedOptions
in classorg.datanucleus.store.AbstractStoreManager
-
newQuery
public org.datanucleus.store.query.Query newQuery(String language, org.datanucleus.ExecutionContext ec)
- Specified by:
newQuery
in interfaceorg.datanucleus.store.StoreManager
-
newQuery
public org.datanucleus.store.query.Query newQuery(String language, org.datanucleus.ExecutionContext ec, String queryString)
- Specified by:
newQuery
in interfaceorg.datanucleus.store.StoreManager
-
newQuery
public org.datanucleus.store.query.Query newQuery(String language, org.datanucleus.ExecutionContext ec, org.datanucleus.store.query.Query q)
- Specified by:
newQuery
in interfaceorg.datanucleus.store.StoreManager
-
getClassNameForObjectID
public String getClassNameForObjectID(Object id, org.datanucleus.ClassLoaderResolver clr, org.datanucleus.ExecutionContext ec)
- Specified by:
getClassNameForObjectID
in interfaceorg.datanucleus.store.StoreManager
- Overrides:
getClassNameForObjectID
in classorg.datanucleus.store.AbstractStoreManager
-
supportsValueGenerationStrategy
public boolean supportsValueGenerationStrategy(String strategy)
Accessor for whether this value strategy is supported. Overrides the superclass to allow for "IDENTITY" since we support it and no entry in plugins for it.- Specified by:
supportsValueGenerationStrategy
in interfaceorg.datanucleus.store.StoreManager
- Overrides:
supportsValueGenerationStrategy
in classorg.datanucleus.store.AbstractStoreManager
- Parameters:
strategy
- The strategy- Returns:
- Whether it is supported.
-
getValueGenerationStrategyForNative
public String getValueGenerationStrategyForNative(org.datanucleus.metadata.AbstractClassMetaData cmd, int absFieldNumber)
- Specified by:
getValueGenerationStrategyForNative
in interfaceorg.datanucleus.store.StoreManager
- Overrides:
getValueGenerationStrategyForNative
in classorg.datanucleus.store.AbstractStoreManager
-
manageClasses
public void manageClasses(org.datanucleus.ClassLoaderResolver clr, String... classNames)
- Specified by:
manageClasses
in interfaceorg.datanucleus.store.StoreManager
- Overrides:
manageClasses
in classorg.datanucleus.store.AbstractStoreManager
-
manageClasses
public void manageClasses(String[] classNames, org.datanucleus.ClassLoaderResolver clr, com.mongodb.DB db)
-
createDatabase
public void createDatabase(String catalogName, String schemaName, Properties props)
- Specified by:
createDatabase
in interfaceorg.datanucleus.store.schema.SchemaAwareStoreManager
-
deleteDatabase
public void deleteDatabase(String catalogName, String schemaName, Properties props)
- Specified by:
deleteDatabase
in interfaceorg.datanucleus.store.schema.SchemaAwareStoreManager
-
createSchemaForClasses
public void createSchemaForClasses(Set<String> classNames, Properties props)
- Specified by:
createSchemaForClasses
in interfaceorg.datanucleus.store.schema.SchemaAwareStoreManager
-
deleteSchemaForClasses
public void deleteSchemaForClasses(Set<String> classNames, Properties props)
- Specified by:
deleteSchemaForClasses
in interfaceorg.datanucleus.store.schema.SchemaAwareStoreManager
-
validateSchemaForClasses
public void validateSchemaForClasses(Set<String> classNames, Properties props)
- Specified by:
validateSchemaForClasses
in interfaceorg.datanucleus.store.schema.SchemaAwareStoreManager
-
-