Package com.db4o.cs.internal
Class ClientObjectContainer
- java.lang.Object
-
- com.db4o.internal.ObjectContainerBase
-
- com.db4o.internal.ExternalObjectContainer
-
- com.db4o.cs.internal.ClientObjectContainer
-
- All Implemented Interfaces:
BlobTransport
,ClientMessageDispatcher
,MessageDispatcher
,ExtClient
,ExtObjectContainer
,InternalObjectContainer
,ObjectContainerSpec
,Internal4
,ObjectContainer
,TransientClass
public class ClientObjectContainer extends ExternalObjectContainer implements ExtClient, BlobTransport, ClientMessageDispatcher
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
ClientObjectContainer.MessageListener
-
Field Summary
Fields Modifier and Type Field Description protected boolean
_doFinalize
-
Fields inherited from class com.db4o.internal.ObjectContainerBase
_blockConverter, _classCollection, _config, _handlers, _lock, _timeStampIdGenerator, _transaction
-
-
Constructor Summary
Constructors Constructor Description ClientObjectContainer(ClientConfiguration config, Socket4Adapter socket, java.lang.String user, java.lang.String password, boolean login)
ClientObjectContainer(ClientConfigurationImpl config, Socket4Adapter socket, java.lang.String user, java.lang.String password, boolean login)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addToBatch(Msg msg)
protected boolean
applyRenames(Config4Impl config)
void
backup(Storage targetStorage, java.lang.String path)
backs up a database file of an open ObjectContainer.void
backupSync(Storage targetStorage, java.lang.String path)
backs up a database file of an open ObjectContainer.byte
blockSize()
void
blockSize(int size)
ClassMetadata
classMetadataForID(int clazzId)
ClassMetadata
classMetadataForReflectClass(ReflectClass claxx)
int
classMetadataIdForName(java.lang.String name)
QueryResult
classOnlyQuery(QQueryBase query, ClassMetadata clazz)
protected void
close2()
protected void
closeIdSystem()
void
closeTransaction(Transaction transaction, boolean isSystemTransaction, boolean rollbackOnClose)
void
commit1(Transaction trans)
void
commitReplication(long replicationRecordId, long timestamp)
int
converterVersion()
boolean
createClassMetadata(ClassMetadata clazz, ReflectClass claxx, ClassMetadata superClazz)
long
currentVersion()
protected java.lang.String
defaultToString()
boolean
delete4(Transaction ta, ObjectReference yo, java.lang.Object obj, int a_cascade, boolean userCall)
void
deleteBlobFile(Transaction trans, BlobImpl blob)
boolean
detectSchemaChanges()
protected boolean
doFinalize()
QueryResult
executeQuery(QQuery query)
Msg
expectedResponse(Msg expectedMessage)
protected void
fatalStorageShutdown()
<T> QLin<T>
from(java.lang.Class<T> clazz)
HardObjectReference
getHardReferenceBySignature(Transaction trans, long uuid, byte[] signature)
long[]
getIDsForClass(Transaction trans, ClassMetadata clazz)
Msg
getResponse()
may return null, if no message is returned.protected boolean
hasShutDownHook()
Db4oDatabase
identity()
returns the Db4oDatabase object for this ObjectContainer.int
idForNewUserObject(Transaction trans)
FixedSizeIntIterator4
idIteratorFor(Transaction trans, ByteArrayBuffer reader)
int
instanceCount(ClassMetadata clazz, Transaction trans)
boolean
isAlive()
checks if the client is currently connected to a server.boolean
isClient()
overridden in ClientObjectContainer The method allows checking whether will make it easier to refactor than an "instanceof YapClient" check.boolean
isDeleted(Transaction trans, int id)
boolean
isMessageDispatcherAlive()
boolean
maintainsIndices()
ClientMessageDispatcher
messageDispatcher()
void
messageListener(ClientObjectContainer.MessageListener listener)
boolean
needsLockFileThread()
EventRegistryImpl
newEventRegistry()
AbstractQueryResult
newQueryResult(Transaction trans, QueryEvaluationMode mode)
Transaction
newTransaction(Transaction parentTransaction, ReferenceSystem referenceSystem, boolean isSystemTransaction)
void
onCommittedListenerAdded()
protected void
openImpl()
ObjectContainer
openSession()
opens a new ObjectContainer on top of this ObjectContainer.java.lang.Object
peekPersisted(Transaction trans, java.lang.Object obj, ActivationDepth depth, boolean committed)
AbstractQueryResult
queryAllObjects(Transaction trans)
void
raiseCommitTimestamp(long a_minimumVersion)
void
readBlobFrom(Transaction trans, BlobImpl blob)
ByteArrayBuffer
readBufferById(Transaction a_ta, int a_id)
ByteArrayBuffer
readBufferById(Transaction transaction, int id, boolean lastCommitted)
void
readBytes(byte[] a_bytes, int a_address, int a_length)
void
readBytes(byte[] bytes, int address, int addressOffset, int length)
ByteArrayBuffer[]
readObjectSlots(Transaction transaction, int[] ids)
ByteArrayBuffer[]
readSlotBuffers(Transaction transaction, int[] ids)
StatefulBuffer
readStatefulBufferById(Transaction a_ta, int a_id)
StatefulBuffer
readStatefulBufferById(Transaction a_ta, int a_id, boolean lastCommitted)
protected void
refreshInternal(Transaction trans, java.lang.Object obj, int depth)
void
releaseSemaphore(Transaction trans, java.lang.String name)
void
releaseSemaphore(java.lang.String name)
releases a semaphore, if the calling transaction is the owner.void
releaseSemaphores(Transaction ta)
void
reserve(int byteCount)
void
rollback1(Transaction trans)
void
send(java.lang.Object obj)
int
serverSideID()
void
setDirtyInSystemTransaction(PersistentBase a_object)
void
setDispatcherName(java.lang.String name)
boolean
setSemaphore(Transaction trans, java.lang.String name, int timeout)
boolean
setSemaphore(java.lang.String name, int timeout)
attempts to set a semaphore.void
shutdown()
protected void
shutdownDataStorage()
Socket4Adapter
socket()
void
storeAll(Transaction transaction, Iterator4 objects)
SystemInfo
systemInfo()
returns theSystemInfo
for this ObjectContainer.java.lang.String
userName()
boolean
write(Msg msg)
void
writeBatchedMessage(Msg msg)
void
writeBatchedMessages()
void
writeBlobTo(Transaction trans, BlobImpl blob)
void
writeDirtyClassMetadata()
boolean
writeMessageToSocket(Msg msg)
void
writeMsg(Msg msg, boolean flush)
void
writeNew(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ByteArrayBuffer buffer)
void
writeUpdate(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ArrayType arrayType, ByteArrayBuffer buffer)
-
Methods inherited from class com.db4o.internal.ExternalObjectContainer
activate, activate, bind, commit, deactivate, deactivate, delete, descend, ext, getByID, getByUUID, getID, getObjectInfo, inCallback, isActive, isCached, isStored, peekPersisted, purge, query, query, query, query, queryByExample, refresh, rollback, store, store, storedClass, storedClasses
-
Methods inherited from class com.db4o.internal.ObjectContainerBase
activate, activate, activationContextFor, activationDepthProvider, asTopLevelCall, backup, backupSync, bind, bind2, blockConverter, callbacks, callbacks, checkClosed, checkReadOnly, checkStillToSet, checkTransaction, checkTransaction, classCollection, classMetadataForName, classMetadataForObject, close, closeSystemTransaction, closeUserTransaction, commit, commitTimestampIndex, config, configImpl, configure, container, createBlockConverter, createReferenceSystem, createStatefulBuffer, createStringIO, db4oTypeStored, deactivate, deactivate, decryptedBufferByAddress, defaultActivationDepth, delete, delete1, delete2, deleteByID, dispatchsEvents, environment, fatalShutdown, finalize, flagAsHandled, generateTimeStampId, generateTransactionTimestamp, getActivatedObjectFromCache, getByID, getByID2, getByUUID, getHardObjectReferenceById, getID, getNativeQueryHandler, getObjectInfo, handledInCurrentTopLevelCall, handleExceptionOnClose, handlers, initalizeWeakReferenceSupport, initialize1, initializeClassMetadataRepository, initializePostOpenExcludingTransportObjectContainer, initializeTransactions, isCached, isClosed, isStored, knownClasses, lock, logMsg, needsUpdate, newSystemTransaction, newUserTransaction, newWeakReference, open, peekPersisted, peekReference, produceClassMetadata, purge, purge, query, query, query, query, query, queryByExample, rawBufferByAddress, readActivatedObjectNotInCache, readWriterByAddress, referenceSystemRegistry, reflector, refresh, replaceClassMetadataRepository, replicationCallState, rollback, showInternalClasses, shutdownObjectContainer, stackDepth, stackDepth, stillToActivate, stillToDeactivate, stopSession, store, store, store2, storeAfterReplication, storeAll, storeByNewReplication, storedClass, storedClasses, storeInternal, storeInternal, stringIO, syncExec, systemTransaction, threadPool, topLevelCallId, topLevelCallId, toString, transaction, tryGetByID, typeHandlerForClass, typeHandlerForClassMetadataID, updateDepthProvider, useDefaultTransactionTimestamp, uUIDIndex, version, versionIndex, withEnvironment, withTransaction
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.db4o.ext.ExtObjectContainer
activate, backup, backupSync, bind, configure, deactivate, descend, getByID, getByUUID, getID, getObjectInfo, isActive, isCached, isClosed, isStored, knownClasses, lock, peekPersisted, purge, purge, reflector, refresh, store, storedClass, storedClasses, version
-
Methods inherited from interface com.db4o.cs.internal.messages.MessageDispatcher
close
-
Methods inherited from interface com.db4o.ObjectContainer
activate, close, commit, deactivate, delete, ext, query, query, query, query, query, queryByExample, rollback, store
-
-
-
-
Constructor Detail
-
ClientObjectContainer
public ClientObjectContainer(ClientConfiguration config, Socket4Adapter socket, java.lang.String user, java.lang.String password, boolean login)
-
ClientObjectContainer
public ClientObjectContainer(ClientConfigurationImpl config, Socket4Adapter socket, java.lang.String user, java.lang.String password, boolean login)
-
-
Method Detail
-
openImpl
protected final void openImpl()
- Specified by:
openImpl
in classObjectContainerBase
-
backup
public void backup(Storage targetStorage, java.lang.String path) throws NotSupportedException
Description copied from interface:ExtObjectContainer
backs up a database file of an open ObjectContainer.
While the backup is running, the ObjectContainer can continue to be used. Changes that are made while the backup is in progress, will be applied to the open ObjectContainer and to the backup.
While the backup is running, the ObjectContainer should not be closed.
Note that this is designed to run as a background process: To avoid harming performance of concurrently active database operations, it tries to leave room for other threads as much as possible and thus will be orders of magnitude slower than a regular file copy. If you are looking for a faster backup (that will block all other database operations), useExtObjectContainer.backupSync(Storage, String)
instead.
If a file already exists at the specified path, it will be overwritten.
This method is intended for cross-storage backups, i.e. backup from an in-memory database to a file.- Specified by:
backup
in interfaceExtObjectContainer
- Specified by:
backup
in classExternalObjectContainer
- Parameters:
targetStorage
- theStorage
to be used for backuppath
- a fully qualified path- Throws:
NotSupportedException
- is thrown when the operation is not supported in current configuration/environment
-
backupSync
public void backupSync(Storage targetStorage, java.lang.String path) throws NotSupportedException
Description copied from interface:ExtObjectContainer
backs up a database file of an open ObjectContainer. While the backup is running, the ObjectContainer should not be closed.
Note that this blocks all other concurrently active database operations for the full duration of the backup. If you intend to run a backup as a less intrusive background process concurrently with other database operations, useExtObjectContainer.backup(Storage, String)
instead.
If a file already exists at the specified path, it will be overwritten.
This method can be used for cross-storage backups, i.e. backup from an in-memory database to a file.- Specified by:
backupSync
in interfaceExtObjectContainer
- Specified by:
backupSync
in classExternalObjectContainer
- Parameters:
targetStorage
- theStorage
to be used for backuppath
- a fully qualified path- Throws:
NotSupportedException
- is thrown when the operation is not supported in current configuration/environment
-
closeTransaction
public void closeTransaction(Transaction transaction, boolean isSystemTransaction, boolean rollbackOnClose)
- Specified by:
closeTransaction
in classObjectContainerBase
-
reserve
public void reserve(int byteCount)
- Specified by:
reserve
in classObjectContainerBase
-
blockSize
public byte blockSize()
- Specified by:
blockSize
in classObjectContainerBase
-
close2
protected void close2()
- Specified by:
close2
in classObjectContainerBase
-
commit1
public final void commit1(Transaction trans)
- Specified by:
commit1
in classObjectContainerBase
-
converterVersion
public int converterVersion()
- Specified by:
converterVersion
in classObjectContainerBase
-
newQueryResult
public AbstractQueryResult newQueryResult(Transaction trans, QueryEvaluationMode mode)
- Specified by:
newQueryResult
in classObjectContainerBase
-
newTransaction
public final Transaction newTransaction(Transaction parentTransaction, ReferenceSystem referenceSystem, boolean isSystemTransaction)
- Specified by:
newTransaction
in classObjectContainerBase
-
createClassMetadata
public boolean createClassMetadata(ClassMetadata clazz, ReflectClass claxx, ClassMetadata superClazz)
- Overrides:
createClassMetadata
in classObjectContainerBase
-
currentVersion
public long currentVersion()
- Specified by:
currentVersion
in classObjectContainerBase
-
delete4
public final boolean delete4(Transaction ta, ObjectReference yo, java.lang.Object obj, int a_cascade, boolean userCall)
- Specified by:
delete4
in classObjectContainerBase
-
detectSchemaChanges
public boolean detectSchemaChanges()
- Overrides:
detectSchemaChanges
in classObjectContainerBase
-
doFinalize
protected boolean doFinalize()
- Overrides:
doFinalize
in classObjectContainerBase
-
queryAllObjects
public AbstractQueryResult queryAllObjects(Transaction trans)
- Specified by:
queryAllObjects
in classObjectContainerBase
-
getHardReferenceBySignature
public final HardObjectReference getHardReferenceBySignature(Transaction trans, long uuid, byte[] signature)
- Overrides:
getHardReferenceBySignature
in classObjectContainerBase
-
getResponse
public Msg getResponse()
may return null, if no message is returned. Error handling is weak and should ideally be able to trigger some sort of state listener (connection dead) on the client.
-
isMessageDispatcherAlive
public boolean isMessageDispatcherAlive()
- Specified by:
isMessageDispatcherAlive
in interfaceMessageDispatcher
-
classMetadataForID
public ClassMetadata classMetadataForID(int clazzId)
- Specified by:
classMetadataForID
in interfaceInternalObjectContainer
- Overrides:
classMetadataForID
in classObjectContainerBase
-
needsLockFileThread
public boolean needsLockFileThread()
- Overrides:
needsLockFileThread
in classObjectContainerBase
-
hasShutDownHook
protected boolean hasShutDownHook()
- Overrides:
hasShutDownHook
in classObjectContainerBase
-
identity
public Db4oDatabase identity()
Description copied from interface:ExtObjectContainer
returns the Db4oDatabase object for this ObjectContainer.- Specified by:
identity
in interfaceExtObjectContainer
- Specified by:
identity
in classExternalObjectContainer
- Returns:
- the Db4oDatabase identity object for this ObjectContainer.
-
isClient
public boolean isClient()
Description copied from class:ObjectContainerBase
overridden in ClientObjectContainer The method allows checking whether will make it easier to refactor than an "instanceof YapClient" check.- Specified by:
isClient
in interfaceInternalObjectContainer
- Overrides:
isClient
in classObjectContainerBase
-
maintainsIndices
public boolean maintainsIndices()
- Overrides:
maintainsIndices
in classObjectContainerBase
-
idForNewUserObject
public final int idForNewUserObject(Transaction trans)
- Specified by:
idForNewUserObject
in classObjectContainerBase
-
raiseCommitTimestamp
public void raiseCommitTimestamp(long a_minimumVersion)
- Specified by:
raiseCommitTimestamp
in classObjectContainerBase
-
readBytes
public void readBytes(byte[] bytes, int address, int addressOffset, int length)
- Specified by:
readBytes
in classObjectContainerBase
-
readBytes
public void readBytes(byte[] a_bytes, int a_address, int a_length)
- Specified by:
readBytes
in classObjectContainerBase
-
applyRenames
protected boolean applyRenames(Config4Impl config)
- Overrides:
applyRenames
in classObjectContainerBase
-
readStatefulBufferById
public final StatefulBuffer readStatefulBufferById(Transaction a_ta, int a_id)
- Specified by:
readStatefulBufferById
in classObjectContainerBase
-
readStatefulBufferById
public final StatefulBuffer readStatefulBufferById(Transaction a_ta, int a_id, boolean lastCommitted)
- Specified by:
readStatefulBufferById
in classObjectContainerBase
-
peekPersisted
public java.lang.Object peekPersisted(Transaction trans, java.lang.Object obj, ActivationDepth depth, boolean committed) throws DatabaseClosedException
- Overrides:
peekPersisted
in classObjectContainerBase
- Throws:
DatabaseClosedException
-
refreshInternal
protected void refreshInternal(Transaction trans, java.lang.Object obj, int depth)
- Overrides:
refreshInternal
in classObjectContainerBase
-
readSlotBuffers
public final ByteArrayBuffer[] readSlotBuffers(Transaction transaction, int[] ids)
- Specified by:
readSlotBuffers
in classObjectContainerBase
-
readObjectSlots
public final ByteArrayBuffer[] readObjectSlots(Transaction transaction, int[] ids)
-
readBufferById
public final ByteArrayBuffer readBufferById(Transaction transaction, int id, boolean lastCommitted)
- Specified by:
readBufferById
in classObjectContainerBase
-
readBufferById
public final ByteArrayBuffer readBufferById(Transaction a_ta, int a_id)
- Specified by:
readBufferById
in classObjectContainerBase
-
idIteratorFor
public FixedSizeIntIterator4 idIteratorFor(Transaction trans, ByteArrayBuffer reader)
-
releaseSemaphore
public void releaseSemaphore(Transaction trans, java.lang.String name)
- Specified by:
releaseSemaphore
in classObjectContainerBase
-
releaseSemaphore
public void releaseSemaphore(java.lang.String name)
Description copied from interface:ExtObjectContainer
releases a semaphore, if the calling transaction is the owner.- Specified by:
releaseSemaphore
in interfaceExtObjectContainer
- Specified by:
releaseSemaphore
in classObjectContainerBase
- Parameters:
name
- the name of the semaphore to be released.
-
releaseSemaphores
public void releaseSemaphores(Transaction ta)
- Specified by:
releaseSemaphores
in classObjectContainerBase
-
rollback1
public final void rollback1(Transaction trans)
- Specified by:
rollback1
in classObjectContainerBase
-
send
public void send(java.lang.Object obj)
- Overrides:
send
in classObjectContainerBase
-
setDirtyInSystemTransaction
public final void setDirtyInSystemTransaction(PersistentBase a_object)
- Specified by:
setDirtyInSystemTransaction
in classObjectContainerBase
-
setSemaphore
public boolean setSemaphore(Transaction trans, java.lang.String name, int timeout)
- Specified by:
setSemaphore
in classObjectContainerBase
-
setSemaphore
public boolean setSemaphore(java.lang.String name, int timeout)
Description copied from interface:ExtObjectContainer
attempts to set a semaphore.
Semaphores are transient multi-purpose named flags forObjectContainers
.
A transaction that successfully sets a semaphore becomes the owner of the semaphore. Semaphores can only be owned by a single transaction at one point in time.
This method returns true, if the transaction already owned the semaphore before the method call or if it successfully acquires ownership of the semaphore.
The waitForAvailability parameter allows to specify a time in milliseconds to wait for other transactions to release the semaphore, in case the semaphore is already owned by another transaction.
Semaphores are released by the first occurrence of one of the following:
- the transaction releases the semaphore withExtObjectContainer.releaseSemaphore(java.lang.String)
- the transaction is closed withObjectContainer.close()
- C/S only: the correspondingObjectServer
is closed.
- C/S only: the clientObjectContainer
looses the connection and is timed out.
Semaphores are set immediately. They are independant of callingObjectContainer.commit()
orObjectContainer.rollback()
.
Possible use cases for semaphores:
- prevent other clients from inserting a singleton at the same time. A suggested name for the semaphore: "SINGLETON_" + Object#getClass().getName().
- lock objects. A suggested name: "LOCK_" +getID(Object)
- generate a unique client ID. A suggested name: "CLIENT_" + System.currentTimeMillis().- Specified by:
setSemaphore
in interfaceExtObjectContainer
- Specified by:
setSemaphore
in classObjectContainerBase
- Parameters:
name
- 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.- Returns:
- boolean flag
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.
-
defaultToString
protected java.lang.String defaultToString()
- Specified by:
defaultToString
in classObjectContainerBase
-
shutdown
public void shutdown()
- Specified by:
shutdown
in classObjectContainerBase
-
writeDirtyClassMetadata
public final void writeDirtyClassMetadata()
- Specified by:
writeDirtyClassMetadata
in classObjectContainerBase
-
write
public final boolean write(Msg msg)
- Specified by:
write
in interfaceMessageDispatcher
-
writeBatchedMessage
public final void writeBatchedMessage(Msg msg)
-
writeMsg
public final void writeMsg(Msg msg, boolean flush)
-
writeMessageToSocket
public boolean writeMessageToSocket(Msg msg)
-
writeNew
public final void writeNew(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ByteArrayBuffer buffer)
- Specified by:
writeNew
in classObjectContainerBase
-
writeUpdate
public final void writeUpdate(Transaction trans, Pointer4 pointer, ClassMetadata classMetadata, ArrayType arrayType, ByteArrayBuffer buffer)
- Specified by:
writeUpdate
in classObjectContainerBase
-
isAlive
public boolean isAlive()
Description copied from interface:ExtClient
checks if the client is currently connected to a server.
-
socket
public Socket4Adapter socket()
-
systemInfo
public SystemInfo systemInfo()
Description copied from interface:ExtObjectContainer
returns theSystemInfo
for this ObjectContainer.
TheSystemInfo
supplies methods that provide information about system state and system settings of this ObjectContainer.- Specified by:
systemInfo
in interfaceExtObjectContainer
- Specified by:
systemInfo
in classObjectContainerBase
- Returns:
- the
SystemInfo
for this ObjectContainer.
-
writeBlobTo
public void writeBlobTo(Transaction trans, BlobImpl blob) throws java.io.IOException
- Specified by:
writeBlobTo
in interfaceBlobTransport
- Throws:
java.io.IOException
-
readBlobFrom
public void readBlobFrom(Transaction trans, BlobImpl blob) throws java.io.IOException
- Specified by:
readBlobFrom
in interfaceBlobTransport
- Throws:
java.io.IOException
-
deleteBlobFile
public void deleteBlobFile(Transaction trans, BlobImpl blob)
- Specified by:
deleteBlobFile
in interfaceBlobTransport
-
getIDsForClass
public long[] getIDsForClass(Transaction trans, ClassMetadata clazz)
- Specified by:
getIDsForClass
in classObjectContainerBase
-
classOnlyQuery
public QueryResult classOnlyQuery(QQueryBase query, ClassMetadata clazz)
- Specified by:
classOnlyQuery
in classObjectContainerBase
-
executeQuery
public QueryResult executeQuery(QQuery query)
- Specified by:
executeQuery
in classObjectContainerBase
-
writeBatchedMessages
public final void writeBatchedMessages()
-
addToBatch
public final void addToBatch(Msg msg)
-
shutdownDataStorage
protected void shutdownDataStorage()
- Specified by:
shutdownDataStorage
in classObjectContainerBase
-
setDispatcherName
public void setDispatcherName(java.lang.String name)
-
messageDispatcher
public ClientMessageDispatcher messageDispatcher()
-
onCommittedListenerAdded
public void onCommittedListenerAdded()
-
classMetadataForReflectClass
public ClassMetadata classMetadataForReflectClass(ReflectClass claxx)
- Specified by:
classMetadataForReflectClass
in interfaceInternalObjectContainer
- Overrides:
classMetadataForReflectClass
in classObjectContainerBase
-
classMetadataIdForName
public int classMetadataIdForName(java.lang.String name)
- Overrides:
classMetadataIdForName
in classObjectContainerBase
-
instanceCount
public int instanceCount(ClassMetadata clazz, Transaction trans)
- Specified by:
instanceCount
in interfaceInternalObjectContainer
-
messageListener
public void messageListener(ClientObjectContainer.MessageListener listener)
-
storeAll
public void storeAll(Transaction transaction, Iterator4 objects)
- Specified by:
storeAll
in interfaceInternalObjectContainer
- Overrides:
storeAll
in classObjectContainerBase
-
fatalStorageShutdown
protected void fatalStorageShutdown()
- Specified by:
fatalStorageShutdown
in classObjectContainerBase
-
userName
public java.lang.String userName()
-
isDeleted
public boolean isDeleted(Transaction trans, int id)
- Specified by:
isDeleted
in classObjectContainerBase
-
blockSize
public void blockSize(int size)
- Specified by:
blockSize
in classObjectContainerBase
-
closeIdSystem
protected void closeIdSystem()
- Specified by:
closeIdSystem
in classObjectContainerBase
-
openSession
public ObjectContainer openSession()
Description copied from interface:ExtObjectContainer
opens a new ObjectContainer on top of this ObjectContainer. The ObjectContainer will have it's own transaction and it's own reference system.- Specified by:
openSession
in interfaceExtObjectContainer
- Returns:
- the new ObjectContainer session.
-
serverSideID
public int serverSideID()
-
newEventRegistry
public EventRegistryImpl newEventRegistry()
- Specified by:
newEventRegistry
in interfaceInternalObjectContainer
-
from
public <T> QLin<T> from(java.lang.Class<T> clazz)
-
commitReplication
public void commitReplication(long replicationRecordId, long timestamp)
-
-