public static class EngineWrapper.ReadOnlyEngine extends EngineWrapper
Engine
and throws
UnsupportedOperationException("Read-only")
on any modification attempt.EngineWrapper.CloseOnJVMShutdown, EngineWrapper.ImmutabilityCheckEngine, EngineWrapper.ReadOnlyEngine, EngineWrapper.SerializerCheckEngineWrapper, EngineWrapper.SynchronizedEngineWrapper
CLOSED
CATALOG_RECID, CHECK_RECORD, CLASS_INFO_RECID, LAST_RESERVED_RECID
Constructor and Description |
---|
ReadOnlyEngine(Engine engine) |
Modifier and Type | Method and Description |
---|---|
boolean |
canSnapshot() |
void |
commit()
Makes all changes made since the previous commit/rollback permanent.
|
<A> boolean |
compareAndSwap(long recid,
A expectedOldValue,
A newValue,
Serializer<A> serializer)
Updates existing record in atomic (Compare And Swap) manner.
|
<A> void |
delete(long recid,
Serializer<A> serializer)
Remove existing record from store/cache
Recid must be a number returned by 'put' method.
|
boolean |
isReadOnly()
Check if you can write into this Engine.
|
long |
preallocate()
Preallocates recid for not yet created record.
|
void |
preallocate(long[] recids)
Preallocates recids for not yet created record.
|
<A> long |
put(A value,
Serializer<A> serializer)
Insert new record.
|
void |
rollback()
Undoes all changes made in the current transaction.
|
Engine |
snapshot()
Returns read-only snapshot of data in Engine.
|
<A> void |
update(long recid,
A value,
Serializer<A> serializer)
Update existing record with new value.
|
canRollback, checkClosed, clearCache, close, closeListenerRegister, closeListenerUnregister, compact, get, getSerializerPojo, getWrappedEngine, isClosed
public ReadOnlyEngine(Engine engine)
public long preallocate()
Engine
preallocate
in interface Engine
preallocate
in class EngineWrapper
public void preallocate(long[] recids)
Engine
preallocate
in interface Engine
preallocate
in class EngineWrapper
recids
- array to put result intopublic <A> boolean compareAndSwap(long recid, A expectedOldValue, A newValue, Serializer<A> serializer)
Engine
oldValue==expectedOldValue
when old value is found in instance cacheoldValue
using serializer
and checking oldValue.equals(expectedOldValue)
expectedOldValue
using serializer
and comparing binary array with already serialized oldValue
compareAndSwap
in interface Engine
compareAndSwap
in class EngineWrapper
recid
- (record identifier) under which record was persisted.expectedOldValue
- old value to be compared with existing recordnewValue
- to be written if values are matchingserializer
- used to serialize record into binary formpublic <A> long put(A value, Serializer<A> serializer)
Engine
put
in interface Engine
put
in class EngineWrapper
value
- records to be addedserializer
- used to convert record into/from binary formpublic <A> void update(long recid, A value, Serializer<A> serializer)
Engine
update
in interface Engine
update
in class EngineWrapper
recid
- (record identifier) under which record was persisted.value
- new record value to be storedserializer
- used to serialize record into binary formpublic <A> void delete(long recid, Serializer<A> serializer)
Engine
delete
in interface Engine
delete
in class EngineWrapper
recid
- (record identifier) under which was record persistedserializer
- which may be used in some circumstances to deserialize and store old objectpublic void commit()
Engine
commit
in interface Engine
commit
in class EngineWrapper
public void rollback()
Engine
UnsupportedOperationException
.rollback
in interface Engine
rollback
in class EngineWrapper
public boolean isReadOnly()
Engine
isReadOnly
in interface Engine
isReadOnly
in class EngineWrapper
public boolean canSnapshot()
canSnapshot
in interface Engine
canSnapshot
in class EngineWrapper
public Engine snapshot() throws UnsupportedOperationException
Engine
snapshot
in interface Engine
snapshot
in class EngineWrapper
UnsupportedOperationException
- if snapshots are not supported/enabledEngineWrapper.canSnapshot()
Copyright © 2019. All rights reserved.