public abstract class ObjectContainerBase extends java.lang.Object implements TransientClass, Internal4, ObjectContainerSpec, InternalObjectContainer
| Modifier and Type | Field and Description |
|---|---|
protected BlockConverter |
_blockConverter |
protected ClassMetadataRepository |
_classCollection |
protected Config4Impl |
_config |
HandlerRegistry |
_handlers |
protected java.lang.Object |
_lock |
protected TimeStampIdGenerator |
_timeStampIdGenerator |
protected Transaction |
_transaction |
| Modifier | Constructor and Description |
|---|---|
protected |
ObjectContainerBase(Configuration config) |
| Modifier and Type | Method and Description |
|---|---|
void |
activate(Transaction trans,
java.lang.Object obj) |
void |
activate(Transaction trans,
java.lang.Object obj,
ActivationDepth depth) |
ActivationContext4 |
activationContextFor(Transaction ta,
java.lang.Object obj,
ActivationDepth depth) |
ActivationDepthProvider |
activationDepthProvider() |
protected boolean |
applyRenames(Config4Impl config) |
protected <R> R |
asTopLevelCall(Function4<Transaction,R> block,
Transaction trans) |
void |
backup(java.lang.String path)
backs up a database file of an open ObjectContainer.
|
void |
bind(Transaction trans,
java.lang.Object obj,
long id) |
ObjectReference |
bind2(Transaction trans,
ObjectReference oldRef,
java.lang.Object obj) |
BlockConverter |
blockConverter() |
abstract byte |
blockSize() |
abstract void |
blockSize(int size) |
Callbacks |
callbacks() |
void |
callbacks(Callbacks cb) |
void |
checkClosed() |
protected void |
checkReadOnly() |
void |
checkStillToSet() |
Transaction |
checkTransaction() |
Transaction |
checkTransaction(Transaction ta) |
ClassMetadataRepository |
classCollection() |
ClassMetadata |
classMetadataForID(int id) |
ClassMetadata |
classMetadataForName(java.lang.String name) |
ClassMetadata |
classMetadataForObject(java.lang.Object obj) |
ClassMetadata |
classMetadataForReflectClass(ReflectClass claxx) |
int |
classMetadataIdForName(java.lang.String name) |
abstract QueryResult |
classOnlyQuery(QQueryBase queryBase,
ClassMetadata clazz) |
boolean |
close()
closes the
ObjectContainer. |
protected abstract void |
close2() |
protected abstract void |
closeIdSystem() |
protected void |
closeSystemTransaction() |
abstract void |
closeTransaction(Transaction transaction,
boolean isSystemTransaction,
boolean rollbackOnClose) |
protected void |
closeUserTransaction() |
void |
commit(Transaction trans) |
abstract void |
commit1(Transaction trans) |
CommitTimestampFieldMetadata |
commitTimestampIndex() |
Config4Impl |
config() |
Config4Impl |
configImpl() |
Configuration |
configure()
returns the Configuration context for this ObjectContainer.
|
ObjectContainerBase |
container() |
abstract int |
converterVersion() |
protected void |
createBlockConverter(int blockSize) |
boolean |
createClassMetadata(ClassMetadata classMeta,
ReflectClass clazz,
ClassMetadata superClassMeta) |
ReferenceSystem |
createReferenceSystem() |
StatefulBuffer |
createStatefulBuffer(Transaction trans,
int address,
int length) |
protected void |
createStringIO(byte encoding) |
abstract long |
currentVersion() |
Db4oType |
db4oTypeStored(Transaction trans,
java.lang.Object obj)
allows special handling for all Db4oType objects.
|
void |
deactivate(Transaction trans,
java.lang.Object obj) |
void |
deactivate(Transaction trans,
java.lang.Object obj,
int depth) |
ByteArrayBuffer |
decryptedBufferByAddress(int address,
int length) |
ActivationDepth |
defaultActivationDepth(ClassMetadata classMetadata) |
protected abstract java.lang.String |
defaultToString() |
void |
delete(Transaction trans,
java.lang.Object obj) |
void |
delete1(Transaction trans,
java.lang.Object obj,
boolean userCall) |
void |
delete2(Transaction trans,
ObjectReference ref,
java.lang.Object obj,
int cascade,
boolean userCall) |
abstract boolean |
delete4(Transaction ta,
ObjectReference ref,
java.lang.Object obj,
int a_cascade,
boolean userCall) |
void |
deleteByID(Transaction transaction,
int id,
int cascadeDeleteDepth) |
boolean |
detectSchemaChanges() |
boolean |
dispatchsEvents() |
protected boolean |
doFinalize() |
protected Environment |
environment() |
abstract QueryResult |
executeQuery(QQuery query) |
void |
fatalShutdown(java.lang.Throwable origExc) |
protected abstract void |
fatalStorageShutdown() |
protected void |
finalize() |
void |
flagAsHandled(ObjectReference ref) |
long |
generateTimeStampId() |
long |
generateTransactionTimestamp(long forcedTimestamp) |
java.lang.Object |
getActivatedObjectFromCache(Transaction ta,
int id) |
java.lang.Object |
getByID(Transaction ta,
long id) |
java.lang.Object |
getByID2(Transaction ta,
int id) |
java.lang.Object |
getByUUID(Transaction trans,
Db4oUUID uuid) |
HardObjectReference |
getHardObjectReferenceById(Transaction trans,
int id) |
HardObjectReference |
getHardReferenceBySignature(Transaction trans,
long uuid,
byte[] signature) |
int |
getID(Transaction trans,
java.lang.Object obj) |
abstract long[] |
getIDsForClass(Transaction trans,
ClassMetadata clazz) |
NativeQueryHandler |
getNativeQueryHandler() |
ObjectInfo |
getObjectInfo(Transaction trans,
java.lang.Object obj) |
boolean |
handledInCurrentTopLevelCall(ObjectReference ref) |
protected void |
handleExceptionOnClose(java.lang.Exception exc) |
HandlerRegistry |
handlers() |
protected boolean |
hasShutDownHook() |
abstract int |
idForNewUserObject(Transaction trans) |
protected void |
initalizeWeakReferenceSupport() |
protected void |
initialize1(Configuration config) |
protected void |
initializeClassMetadataRepository() |
protected void |
initializePostOpenExcludingTransportObjectContainer() |
protected void |
initializeTransactions() |
boolean |
isCached(Transaction trans,
long id) |
boolean |
isClient()
overridden in ClientObjectContainer
The method allows checking whether will make it easier to refactor than
an "instanceof YapClient" check.
|
boolean |
isClosed()
tests if this
ObjectContainer is closed. |
abstract boolean |
isDeleted(Transaction trans,
int id) |
boolean |
isStored(Transaction trans,
java.lang.Object obj) |
ReflectClass[] |
knownClasses()
returns all class representations that are known to this
ObjectContainer because they have been used or stored.
|
java.lang.Object |
lock()
returns the main synchronization lock.
|
void |
logMsg(int code,
java.lang.String msg) |
boolean |
maintainsIndices() |
boolean |
needsLockFileThread() |
void |
needsUpdate(ClassMetadata classMetadata) |
abstract AbstractQueryResult |
newQueryResult(Transaction trans,
QueryEvaluationMode mode) |
Transaction |
newSystemTransaction() |
abstract Transaction |
newTransaction(Transaction parentTransaction,
ReferenceSystem referenceSystem,
boolean isSystemTransaction) |
Transaction |
newUserTransaction() |
java.lang.Object |
newWeakReference(ObjectReference referent,
java.lang.Object obj) |
protected void |
open() |
protected abstract void |
openImpl() |
java.lang.Object |
peekPersisted(Transaction trans,
int id,
ActivationDepth depth,
boolean resetJustPeeked) |
java.lang.Object |
peekPersisted(Transaction trans,
java.lang.Object obj,
ActivationDepth depth,
boolean committed) |
ObjectReference |
peekReference(Transaction trans,
int id,
ActivationDepth depth,
boolean resetJustPeeked) |
ClassMetadata |
produceClassMetadata(ReflectClass claxx) |
void |
purge()
unloads all clean indices from memory and frees unused objects.
|
void |
purge(Transaction trans,
java.lang.Object obj) |
ObjectSet |
query(Predicate predicate,
java.util.Comparator comparator)
Native Query Interface.
|
Query |
query(Transaction ta) |
<T> ObjectSet<T> |
query(Transaction trans,
java.lang.Class<T> clazz) |
ObjectSet |
query(Transaction trans,
Predicate predicate) |
<T> ObjectSet<T> |
query(Transaction trans,
Predicate<T> predicate,
QueryComparator<T> comparator) |
abstract AbstractQueryResult |
queryAllObjects(Transaction ta) |
ObjectSet |
queryByExample(Transaction trans,
java.lang.Object template) |
abstract void |
raiseCommitTimestamp(long minimumTimestamp) |
ByteArrayBuffer |
rawBufferByAddress(int address,
int length) |
java.lang.Object |
readActivatedObjectNotInCache(Transaction trans,
int id) |
abstract ByteArrayBuffer |
readBufferById(Transaction trans,
int id) |
abstract ByteArrayBuffer |
readBufferById(Transaction trans,
int id,
boolean lastCommitted) |
abstract void |
readBytes(byte[] a_bytes,
int a_address,
int a_length) |
abstract void |
readBytes(byte[] bytes,
int address,
int addressOffset,
int length) |
abstract ByteArrayBuffer[] |
readSlotBuffers(Transaction trans,
int[] ids) |
abstract StatefulBuffer |
readStatefulBufferById(Transaction trans,
int id) |
abstract StatefulBuffer |
readStatefulBufferById(Transaction trans,
int id,
boolean lastCommitted) |
StatefulBuffer |
readWriterByAddress(Transaction a_trans,
int address,
int length) |
ReferenceSystemRegistry |
referenceSystemRegistry() |
GenericReflector |
reflector()
Return the reflector currently being used by db4objects.
|
void |
refresh(Transaction trans,
java.lang.Object obj,
int depth) |
protected void |
refreshInternal(Transaction trans,
java.lang.Object obj,
int depth) |
abstract void |
releaseSemaphore(java.lang.String name)
releases a semaphore, if the calling transaction is the owner.
|
abstract void |
releaseSemaphore(Transaction trans,
java.lang.String name) |
abstract void |
releaseSemaphores(Transaction ta) |
void |
replaceClassMetadataRepository(ClassMetadataRepository repository) |
void |
replicationCallState(int state) |
abstract void |
reserve(int byteCount) |
void |
rollback(Transaction trans) |
abstract void |
rollback1(Transaction trans) |
void |
send(java.lang.Object obj) |
abstract void |
setDirtyInSystemTransaction(PersistentBase a_object) |
abstract boolean |
setSemaphore(java.lang.String name,
int timeout)
attempts to set a semaphore.
|
abstract boolean |
setSemaphore(Transaction trans,
java.lang.String name,
int timeout) |
void |
showInternalClasses(boolean show)
Objects implementing the "Internal4" marker interface are
not visible to queries, unless this flag is set to true.
|
abstract void |
shutdown() |
protected abstract void |
shutdownDataStorage() |
void |
shutdownObjectContainer() |
int |
stackDepth() |
void |
stackDepth(int depth) |
void |
stillToActivate(ActivationContext context) |
void |
stillToDeactivate(Transaction trans,
java.lang.Object a_object,
ActivationDepth a_depth,
boolean a_forceUnknownDeactivate) |
protected void |
stopSession() |
void |
store(Transaction trans,
java.lang.Object obj) |
int |
store(Transaction trans,
java.lang.Object obj,
UpdateDepth depth) |
int |
store2(Transaction trans,
java.lang.Object obj,
UpdateDepth updateDepth,
boolean checkJustSet) |
int |
storeAfterReplication(Transaction trans,
java.lang.Object obj,
UpdateDepth depth,
boolean checkJust) |
void |
storeAll(Transaction transaction,
Iterator4 objects) |
void |
storeAll(Transaction transaction,
Iterator4 objects,
UpdateDepth depth) |
void |
storeByNewReplication(Db4oReplicationReferenceProvider referenceProvider,
java.lang.Object obj) |
StoredClass |
storedClass(Transaction trans,
java.lang.Object clazz) |
StoredClass[] |
storedClasses(Transaction trans) |
int |
storeInternal(Transaction trans,
java.lang.Object obj,
boolean checkJustSet) |
int |
storeInternal(Transaction trans,
java.lang.Object obj,
UpdateDepth depth,
boolean checkJustSet) |
LatinStringIO |
stringIO() |
<R> R |
syncExec(Closure4<R> block) |
abstract SystemInfo |
systemInfo()
returns the
SystemInfo for this ObjectContainer. |
Transaction |
systemTransaction() |
ThreadPool4 |
threadPool() |
int |
topLevelCallId() |
void |
topLevelCallId(int id) |
java.lang.String |
toString() |
Transaction |
transaction() |
java.lang.Object |
tryGetByID(Transaction ta,
long id) |
TypeHandler4 |
typeHandlerForClass(ReflectClass claxx) |
TypeHandler4 |
typeHandlerForClassMetadataID(int id) |
UpdateDepthProvider |
updateDepthProvider() |
void |
useDefaultTransactionTimestamp() |
UUIDFieldMetadata |
uUIDIndex() |
long |
version()
returns the current transaction serial number.
|
VersionFieldMetadata |
versionIndex() |
void |
withEnvironment(java.lang.Runnable runnable) |
void |
withTransaction(Transaction transaction,
java.lang.Runnable runnable) |
abstract void |
writeDirtyClassMetadata() |
abstract void |
writeNew(Transaction trans,
Pointer4 pointer,
ClassMetadata classMetadata,
ByteArrayBuffer buffer) |
abstract void |
writeUpdate(Transaction trans,
Pointer4 pointer,
ClassMetadata classMetadata,
ArrayType arrayType,
ByteArrayBuffer buffer) |
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, waitinstanceCount, newEventRegistryactivate, backup, bind, deactivate, descend, getByID, getByUUID, getID, getObjectInfo, identity, isActive, isCached, isStored, openSession, peekPersisted, purge, refresh, store, storedClass, storedClassesactivate, commit, deactivate, delete, ext, query, query, query, query, queryByExample, rollback, storeprotected ClassMetadataRepository _classCollection
protected Config4Impl _config
protected java.lang.Object _lock
protected Transaction _transaction
public HandlerRegistry _handlers
protected final TimeStampIdGenerator _timeStampIdGenerator
protected BlockConverter _blockConverter
protected ObjectContainerBase(Configuration config)
protected Environment environment()
protected final void open()
throws OldFormatException
OldFormatExceptionpublic void withEnvironment(java.lang.Runnable runnable)
protected abstract void openImpl()
throws Db4oIOException
Db4oIOExceptionpublic ActivationDepth defaultActivationDepth(ClassMetadata classMetadata)
public ActivationDepthProvider activationDepthProvider()
public final void activate(Transaction trans, java.lang.Object obj)
public final void deactivate(Transaction trans, java.lang.Object obj)
public final void activate(Transaction trans, java.lang.Object obj, ActivationDepth depth)
public void backup(java.lang.String path)
throws DatabaseClosedException,
Db4oIOException
ExtObjectContainerStorage used for backup is the one configured for this container.backup in interface ExtObjectContainerpath - a fully qualified pathDatabaseClosedException - db4o database file was closed or failed to open.Db4oIOException - I/O operation failed or was unexpectedly interrupted.public ActivationContext4 activationContextFor(Transaction ta, java.lang.Object obj, ActivationDepth depth)
public final void bind(Transaction trans, java.lang.Object obj, long id) throws ArgumentNullException, java.lang.IllegalArgumentException
ArgumentNullExceptionjava.lang.IllegalArgumentExceptionpublic final ObjectReference bind2(Transaction trans, ObjectReference oldRef, java.lang.Object obj)
public ClassMetadata classMetadataForObject(java.lang.Object obj)
public abstract byte blockSize()
public final void checkClosed()
throws DatabaseClosedException
DatabaseClosedExceptionprotected final void checkReadOnly()
throws DatabaseReadOnlyException
DatabaseReadOnlyExceptionpublic final Transaction checkTransaction()
public final Transaction checkTransaction(Transaction ta)
public final boolean close()
ObjectContainerObjectContainer.
close() automatically performs a
commit().
while(!close()){} to kill all sessions using this container.close in interface ObjectContainerprotected void handleExceptionOnClose(java.lang.Exception exc)
protected abstract void close2()
public final void shutdownObjectContainer()
protected abstract void closeIdSystem()
protected final void closeUserTransaction()
protected final void closeSystemTransaction()
public abstract void closeTransaction(Transaction transaction, boolean isSystemTransaction, boolean rollbackOnClose)
protected abstract void shutdownDataStorage()
public final void commit(Transaction trans) throws DatabaseReadOnlyException, DatabaseClosedException
protected <R> R asTopLevelCall(Function4<Transaction,R> block, Transaction trans)
public void fatalShutdown(java.lang.Throwable origExc)
protected abstract void fatalStorageShutdown()
public abstract void commit1(Transaction trans)
public Configuration configure()
ExtObjectContainerDb4o class, the global
Configuration context
is copied into the ObjectContainer. The
Configuration
can be modified individually for
each ObjectContainer without any effects on the global settings.configure in interface ExtObjectContainerConfiguration the Configuration
context for this ObjectContainerDb4o.configure()public Config4Impl config()
public abstract int converterVersion()
public abstract AbstractQueryResult newQueryResult(Transaction trans, QueryEvaluationMode mode)
protected final void createStringIO(byte encoding)
protected final void initializeTransactions()
public abstract Transaction newTransaction(Transaction parentTransaction, ReferenceSystem referenceSystem, boolean isSystemTransaction)
public Transaction newUserTransaction()
public Transaction newSystemTransaction()
public abstract long currentVersion()
public boolean createClassMetadata(ClassMetadata classMeta, ReflectClass clazz, ClassMetadata superClassMeta)
public Db4oType db4oTypeStored(Transaction trans, java.lang.Object obj)
public final void deactivate(Transaction trans, java.lang.Object obj, int depth) throws DatabaseClosedException
DatabaseClosedExceptionpublic final void delete(Transaction trans, java.lang.Object obj) throws DatabaseReadOnlyException, DatabaseClosedException
public final void delete1(Transaction trans, java.lang.Object obj, boolean userCall)
public final void delete2(Transaction trans, ObjectReference ref, java.lang.Object obj, int cascade, boolean userCall)
public abstract boolean delete4(Transaction ta, ObjectReference ref, java.lang.Object obj, int a_cascade, boolean userCall)
public boolean detectSchemaChanges()
public boolean dispatchsEvents()
protected boolean doFinalize()
protected void finalize()
finalize in class java.lang.Objectpublic final ObjectSet queryByExample(Transaction trans, java.lang.Object template)
public abstract AbstractQueryResult queryAllObjects(Transaction ta)
public final java.lang.Object tryGetByID(Transaction ta, long id) throws DatabaseClosedException
DatabaseClosedExceptionpublic final java.lang.Object getByID(Transaction ta, long id) throws DatabaseClosedException, InvalidIDException
public java.lang.Object getByID2(Transaction ta, int id)
public final java.lang.Object getActivatedObjectFromCache(Transaction ta, int id)
public final java.lang.Object readActivatedObjectNotInCache(Transaction trans, int id)
public final java.lang.Object getByUUID(Transaction trans, Db4oUUID uuid)
public HardObjectReference getHardReferenceBySignature(Transaction trans, long uuid, byte[] signature)
public final int getID(Transaction trans, java.lang.Object obj)
public final ObjectInfo getObjectInfo(Transaction trans, java.lang.Object obj)
public final HardObjectReference getHardObjectReferenceById(Transaction trans, int id)
public final StatefulBuffer createStatefulBuffer(Transaction trans, int address, int length)
public final Transaction systemTransaction()
public final Transaction transaction()
transaction in interface InternalObjectContainerpublic ClassMetadata classMetadataForReflectClass(ReflectClass claxx)
classMetadataForReflectClass in interface InternalObjectContainerpublic ClassMetadata produceClassMetadata(ReflectClass claxx)
public int classMetadataIdForName(java.lang.String name)
public ClassMetadata classMetadataForName(java.lang.String name)
classMetadataForName in interface InternalObjectContainerpublic ClassMetadata classMetadataForID(int id)
classMetadataForID in interface InternalObjectContainerpublic HandlerRegistry handlers()
handlers in interface InternalObjectContainerpublic boolean needsLockFileThread()
protected boolean hasShutDownHook()
protected void initialize1(Configuration config)
public ReferenceSystem createReferenceSystem()
protected void initalizeWeakReferenceSupport()
protected void initializeClassMetadataRepository()
protected void initializePostOpenExcludingTransportObjectContainer()
public boolean isCached(Transaction trans, long id)
public boolean isClient()
isClient in interface InternalObjectContainerpublic final boolean isClosed()
ExtObjectContainerObjectContainer is closed.
isClosed in interface ExtObjectContainertrue if this ObjectContainer is closed.public final boolean isStored(Transaction trans, java.lang.Object obj)
public ReflectClass[] knownClasses()
ExtObjectContainerknownClasses in interface ExtObjectContainerpublic TypeHandler4 typeHandlerForClass(ReflectClass claxx)
public TypeHandler4 typeHandlerForClassMetadataID(int id)
public java.lang.Object lock()
ExtObjectContainerlock in interface ExtObjectContainerpublic final void logMsg(int code,
java.lang.String msg)
public boolean maintainsIndices()
public final void needsUpdate(ClassMetadata classMetadata)
public long generateTimeStampId()
public abstract int idForNewUserObject(Transaction trans)
public java.lang.Object peekPersisted(Transaction trans, java.lang.Object obj, ActivationDepth depth, boolean committed) throws DatabaseClosedException
DatabaseClosedExceptionpublic final java.lang.Object peekPersisted(Transaction trans, int id, ActivationDepth depth, boolean resetJustPeeked)
public ObjectReference peekReference(Transaction trans, int id, ActivationDepth depth, boolean resetJustPeeked)
public void purge()
ExtObjectContainerpurge in interface ExtObjectContainerpublic final void purge(Transaction trans, java.lang.Object obj)
public final NativeQueryHandler getNativeQueryHandler()
getNativeQueryHandler in interface InternalObjectContainerpublic final ObjectSet query(Transaction trans, Predicate predicate)
public final <T> ObjectSet<T> query(Transaction trans, Predicate<T> predicate, QueryComparator<T> comparator)
public final <T> ObjectSet<T> query(Transaction trans, java.lang.Class<T> clazz)
public final Query query(Transaction ta)
public abstract void raiseCommitTimestamp(long minimumTimestamp)
public abstract void readBytes(byte[] a_bytes,
int a_address,
int a_length)
throws Db4oIOException
Db4oIOExceptionpublic abstract void readBytes(byte[] bytes,
int address,
int addressOffset,
int length)
throws Db4oIOException
Db4oIOExceptionpublic final ByteArrayBuffer decryptedBufferByAddress(int address, int length) throws Db4oIOException
Db4oIOExceptionpublic ByteArrayBuffer rawBufferByAddress(int address, int length)
public final StatefulBuffer readWriterByAddress(Transaction a_trans, int address, int length) throws Db4oIOException
Db4oIOExceptionpublic abstract StatefulBuffer readStatefulBufferById(Transaction trans, int id)
public abstract StatefulBuffer readStatefulBufferById(Transaction trans, int id, boolean lastCommitted)
public abstract ByteArrayBuffer readBufferById(Transaction trans, int id)
public abstract ByteArrayBuffer readBufferById(Transaction trans, int id, boolean lastCommitted)
public abstract ByteArrayBuffer[] readSlotBuffers(Transaction trans, int[] ids)
public GenericReflector reflector()
ExtObjectContainerreflector in interface ExtObjectContainerpublic final void refresh(Transaction trans, java.lang.Object obj, int depth)
protected void refreshInternal(Transaction trans, java.lang.Object obj, int depth)
public abstract void releaseSemaphore(java.lang.String name)
ExtObjectContainerreleaseSemaphore in interface ExtObjectContainername - the name of the semaphore to be released.public void flagAsHandled(ObjectReference ref)
public abstract void releaseSemaphores(Transaction ta)
protected boolean applyRenames(Config4Impl config)
public final boolean handledInCurrentTopLevelCall(ObjectReference ref)
public abstract void reserve(int byteCount)
public final void rollback(Transaction trans)
public abstract void rollback1(Transaction trans)
public void send(java.lang.Object obj)
obj - public final void store(Transaction trans, java.lang.Object obj) throws DatabaseClosedException, DatabaseReadOnlyException
public final int store(Transaction trans, java.lang.Object obj, UpdateDepth depth) throws DatabaseClosedException, DatabaseReadOnlyException
public final int storeInternal(Transaction trans, java.lang.Object obj, boolean checkJustSet) throws DatabaseClosedException, DatabaseReadOnlyException
public int storeInternal(Transaction trans, java.lang.Object obj, UpdateDepth depth, boolean checkJustSet) throws DatabaseClosedException, DatabaseReadOnlyException
public final int storeAfterReplication(Transaction trans, java.lang.Object obj, UpdateDepth depth, boolean checkJust)
public final void storeByNewReplication(Db4oReplicationReferenceProvider referenceProvider, java.lang.Object obj)
public void checkStillToSet()
public final int store2(Transaction trans, java.lang.Object obj, UpdateDepth updateDepth, boolean checkJustSet)
public abstract void setDirtyInSystemTransaction(PersistentBase a_object)
public abstract boolean setSemaphore(java.lang.String name,
int timeout)
ExtObjectContainerObjectContainers.
ExtObjectContainer.releaseSemaphore(java.lang.String)ObjectContainer.close()ObjectServer is
closed.ObjectContainer looses the connection and is timed
out.ObjectContainer.commit() or ObjectContainer.rollback().getID(Object)setSemaphore in interface ExtObjectContainername - the name of the semaphore to be settimeout - the time in milliseconds to wait for other
transactions to release the semaphore. The parameter may be zero, if
the method is to return immediately.true, if the semaphore could be set or if the
calling transaction already owned the semaphore.
false, if the semaphore is owned by another
transaction.public abstract boolean setSemaphore(Transaction trans, java.lang.String name, int timeout)
public abstract void releaseSemaphore(Transaction trans, java.lang.String name)
public void showInternalClasses(boolean show)
public final void stillToActivate(ActivationContext context)
public final void stillToDeactivate(Transaction trans, java.lang.Object a_object, ActivationDepth a_depth, boolean a_forceUnknownDeactivate)
protected final void stopSession()
public final StoredClass storedClass(Transaction trans, java.lang.Object clazz)
public StoredClass[] storedClasses(Transaction trans)
public LatinStringIO stringIO()
public abstract SystemInfo systemInfo()
ExtObjectContainerSystemInfo for this ObjectContainer.
SystemInfo supplies methods that provide
information about system state and system settings of this
ObjectContainer.systemInfo in interface ExtObjectContainerSystemInfo for this ObjectContainer.public int stackDepth()
public void stackDepth(int depth)
public int topLevelCallId()
public void topLevelCallId(int id)
public long version()
ExtObjectContainerversion in interface ExtObjectContainerpublic abstract void shutdown()
public abstract void writeDirtyClassMetadata()
public abstract void writeNew(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ByteArrayBuffer buffer)
public abstract void writeUpdate(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ArrayType arrayType, ByteArrayBuffer buffer)
public Callbacks callbacks()
callbacks in interface InternalObjectContainerpublic void callbacks(Callbacks cb)
callbacks in interface InternalObjectContainerpublic Config4Impl configImpl()
configImpl in interface InternalObjectContainerpublic UUIDFieldMetadata uUIDIndex()
public VersionFieldMetadata versionIndex()
public CommitTimestampFieldMetadata commitTimestampIndex()
public ClassMetadataRepository classCollection()
public abstract long[] getIDsForClass(Transaction trans, ClassMetadata clazz)
public abstract QueryResult classOnlyQuery(QQueryBase queryBase, ClassMetadata clazz)
public abstract QueryResult executeQuery(QQuery query)
public void replicationCallState(int state)
public ReferenceSystemRegistry referenceSystemRegistry()
public ObjectContainerBase container()
container in interface InternalObjectContainerpublic void deleteByID(Transaction transaction, int id, int cascadeDeleteDepth)
public <R> R syncExec(Closure4<R> block)
syncExec in interface InternalObjectContainerpublic ObjectSet query(Predicate predicate, java.util.Comparator comparator)
ObjectContainerObjectContainer.query(com.db4o.query.Predicate),
but will sort the resulting ObjectSet according to the given Comparator.query in interface ObjectContainerpredicate - the Predicate containing the native query expression.comparator - the java.util.Comparator specifying the sort order of the resultObjectSet returned by the query.public void storeAll(Transaction transaction, Iterator4 objects)
storeAll in interface InternalObjectContainerpublic void storeAll(Transaction transaction, Iterator4 objects, UpdateDepth depth)
public void withTransaction(Transaction transaction, java.lang.Runnable runnable)
public ThreadPool4 threadPool()
public java.lang.Object newWeakReference(ObjectReference referent, java.lang.Object obj)
public final java.lang.String toString()
toString in class java.lang.Objectprotected abstract java.lang.String defaultToString()
public abstract boolean isDeleted(Transaction trans, int id)
public abstract void blockSize(int size)
public BlockConverter blockConverter()
protected void createBlockConverter(int blockSize)
public UpdateDepthProvider updateDepthProvider()
updateDepthProvider in interface InternalObjectContainerpublic void replaceClassMetadataRepository(ClassMetadataRepository repository)
public final long generateTransactionTimestamp(long forcedTimestamp)
public final void useDefaultTransactionTimestamp()