Package org.datanucleus.store
Class StoreDataManager
java.lang.Object
org.datanucleus.store.StoreDataManager
Manager for store information.
Keeps a record of which classes are managed by this datastore, and key information about how that class is handled.
-
Field Summary
FieldsModifier and TypeFieldDescriptionthe memory image of schema data before running itMap of all managed store data, keyed by the class/field name. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
begin()
Begin a transaction that changes the StoreData cachevoid
clear()
Clear the cachevoid
commit()
Commit the transaction changes to the StoreData cachevoid
deregisterClass
(String className) Get the StoreData by the given class nameGet the StoreData by the given field/property when SCO, if it has some specific store data component (join table).Accessor for the StoreData currently managed by this store.getStoreDataForProperties
(String key1, Object value1, String key2, Object value2) Convenience accessor for all store data where property 1 has value1 and property 2 has value2.boolean
managesClass
(String className) Accessor for whether the specified class (when FCO) or fully qualified field (when SCO) is managed currentlyprotected void
registerStoreData
(StoreData data) Method to register some data with the store.void
rollback()
Rollback the transaction changes to the StoreData cacheint
size()
Accessor to the number of StoreData in cache
-
Field Details
-
storeDataByName
Map of all managed store data, keyed by the class/field name. -
savedStoreDataByName
the memory image of schema data before running it
-
-
Constructor Details
-
StoreDataManager
public StoreDataManager()
-
-
Method Details
-
clear
public void clear()Clear the cache -
deregisterClass
-
registerStoreData
Method to register some data with the store.- Parameters:
data
- The StoreData to add
-
getStoreDataForProperties
public StoreData[] getStoreDataForProperties(String key1, Object value1, String key2, Object value2) Convenience accessor for all store data where property 1 has value1 and property 2 has value2. Uses equals() on the values. Doesn't cater for null values.- Parameters:
key1
- Property 1 namevalue1
- Property 1 valuekey2
- Property 2 namevalue2
- Property 2 value- Returns:
- Store data with the specified property values
-
managesClass
Accessor for whether the specified class (when FCO) or fully qualified field (when SCO) is managed currently- Parameters:
className
- The name of the class (or fully qualified field)- Returns:
- Whether it is managed
-
getManagedStoreData
Accessor for the StoreData currently managed by this store.- Returns:
- Collection of the StoreData being managed
-
get
Get the StoreData by the given class name- Parameters:
className
- the fully qualified class name- Returns:
- the StoreData
-
get
Get the StoreData by the given field/property when SCO, if it has some specific store data component (join table).- Parameters:
mmd
- metadata for the the field/property- Returns:
- the StoreData
-
size
public int size()Accessor to the number of StoreData in cache- Returns:
- the number of StoreData in cache
-
begin
public void begin()Begin a transaction that changes the StoreData cache -
rollback
public void rollback()Rollback the transaction changes to the StoreData cache -
commit
public void commit()Commit the transaction changes to the StoreData cache
-