Package org.redisson
Class RedissonObject
-
- org.redisson.RedissonObject
-
- All Implemented Interfaces:
RObject
,RObjectAsync
- Direct Known Subclasses:
JCache
,RedissonAtomicDouble
,RedissonAtomicLong
,RedissonBaseAdder
,RedissonBaseLock
,RedissonBitSet
,RedissonBloomFilter
,RedissonBucket
,RedissonCountDownLatch
,RedissonDelayedQueue
,RedissonHyperLogLog
,RedissonIdGenerator
,RedissonList
,RedissonListMultimapValues
,RedissonMap
,RedissonMultimap
,RedissonPermitExpirableSemaphore
,RedissonRateLimiter
,RedissonReadWriteLock
,RedissonReliableTopic
,RedissonScoredSortedSet
,RedissonSemaphore
,RedissonSet
,RedissonSetCache
,RedissonSetMultimapValues
,RedissonSortedSet
,RedissonStream
,RedissonTimeSeries
,RedissonTransferQueue
public abstract class RedissonObject extends implements RObject
Base Redisson object- Author:
- Nikita Koksharov
-
-
Field Summary
Fields Modifier and Type Field Description protected Codec
codec
protected CommandAsyncExecutor
commandExecutor
protected
name
-
Constructor Summary
Constructors Constructor Description RedissonObject(Codec codec, CommandAsyncExecutor commandExecutor, name)
RedissonObject(CommandAsyncExecutor commandExecutor, name)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected <T extends ObjectListener>
intname, T listener, <T,> consumer)
int
addListener(ObjectListener listener)
Adds object event listenerprotected <T extends >
name, T listener, <T,> consumer)
>
addListenerAsync(ObjectListener listener)
Adds object event listenervoid
host, int port, int database, long timeout)
Copy object from source Redis instance to destination Redis instance>
host, int port, int database, long timeout)
Copy object from source Redis instance to destination Redis instance in async modeboolean
delete()
Deletes the object>
deleteAsync()
Delete object in async modeprotected >
... keys)
byte[]
dump()
Returns dump of objectRFuture<byte[]>
dumpAsync()
Returns dump of objectio.netty.buffer.ByteBuf
value)
protected <io.netty.buffer.ByteBuf>
... values)
protected <io.netty.buffer.ByteBuf>
<?> values)
void
<> params, <?> values)
io.netty.buffer.ByteBuf
value)
protected void
<> params, <?> values)
io.netty.buffer.ByteBuf
value)
protected void
<> params, <?> values)
protected <V> V
get(RFuture<V> future)
Codec
getCodec()
Returns the underlying Codec used by this RObjectgetIdleTime()
Returns number of seconds spent since last write or read operation over this object.>
getIdleTimeAsync()
Returns number of seconds spent since last write or read operation over this object.key, suffix)
key, suffix)
getName()
Returns name of objectgetRawName()
protected
o)
boolean
isExists()
Check object existence>
isExistsAsync()
Check object existence in async mode.void
host, int port, int database, long timeout)
Copy object from source Redis instance to destination Redis instance>
host, int port, int database, long timeout)
Transfer object from source Redis instance to destination Redis instance in async modeboolean
move(int database)
Move object to another database>
moveAsync(int database)
Move object to another database in async modestatic
prefix, name)
void
removeListener(int listenerId)
Removes object event listener>
removeListenerAsync(int listenerId)
Removes object event listenerprotected void
removeListenersAsync(int listenerId, > listener)
void
newName)
Rename current object key tonewName
>
newName)
Rename current object key tonewName
in async modeboolean
newName)
Rename current object key tonewName
only if new key is not exists>
newName)
Rename current object key tonewName
in async mode only if new key is not existsvoid
restore(byte[] state)
Restores object using its state returned byRObject.dump()
method.void
restore(byte[] state, long timeToLive, timeUnit)
Restores object using its state returned byRObject.dump()
method and set time to live for it.void
restoreAndReplace(byte[] state)
Restores and replaces object if it already exists.void
restoreAndReplace(byte[] state, long timeToLive, timeUnit)
Restores and replaces object if it already exists and set time to live for it.>
restoreAndReplaceAsync(byte[] state)
Restores and replaces object if it already exists.>
restoreAndReplaceAsync(byte[] state, long timeToLive, timeUnit)
Restores and replaces object if it already exists and set time to live for it.>
restoreAsync(byte[] state)
Restores object using its state returned byRObjectAsync.dumpAsync()
method.>
restoreAsync(byte[] state, long timeToLive, timeUnit)
Restores object using its state returned byRObjectAsync.dumpAsync()
method and set time to live for it.protected void
name)
long
sizeInMemory()
Returns bytes amount used by object in Redis memory.>
sizeInMemoryAsync()
Returns bytes amount used by object in Redis memory.>
<> keys)
>
sizeInMemoryAsync(CommandAsyncExecutor commandExecutor, <> keys)
static
name, suffix)
protected long
toSeconds(long timeout, unit)
protected <T> <T>
<T> iterator)
boolean
touch()
Update the last access time of an object.>
touchAsync()
Update the last access time of an object in async mode.boolean
unlink()
Delete the objects.>
unlinkAsync()
Delete the objects.
-
-
-
Field Detail
-
commandExecutor
protected final CommandAsyncExecutor commandExecutor
-
name
protected name
-
codec
protected final Codec codec
-
-
Constructor Detail
-
RedissonObject
public RedissonObject(Codec codec, CommandAsyncExecutor commandExecutor, name)
-
RedissonObject
public RedissonObject(CommandAsyncExecutor commandExecutor, name)
-
-
Method Detail
-
prefixName
public static prefixName( prefix, name)
-
suffixName
public static suffixName( name, suffix)
-
toStream
protected final <T> <T> toStream(<T> iterator)
-
get
protected final <V> V get(RFuture<V> future)
-
toSeconds
protected final long toSeconds(long timeout, unit)
-
getName
public getName()
Description copied from interface:RObject
Returns name of object
-
getRawName
public final getRawName()
-
getRawName
protected getRawName( o)
-
setName
protected final void setName( name)
-
rename
public void rename( newName)
Description copied from interface:RObject
Rename current object key tonewName
-
sizeInMemoryAsync
public > sizeInMemoryAsync()
Description copied from interface:RObjectAsync
Returns bytes amount used by object in Redis memory.- Specified by:
sizeInMemoryAsync
in interfaceRObjectAsync
- Returns:
- size in bytes
-
sizeInMemoryAsync
public final > sizeInMemoryAsync(<> keys)
-
sizeInMemoryAsync
public final > sizeInMemoryAsync(CommandAsyncExecutor commandExecutor, <> keys)
-
sizeInMemory
public long sizeInMemory()
Description copied from interface:RObject
Returns bytes amount used by object in Redis memory.- Specified by:
sizeInMemory
in interfaceRObject
- Returns:
- size in bytes
-
renameAsync
public > renameAsync( newName)
Description copied from interface:RObjectAsync
Rename current object key tonewName
in async mode- Specified by:
renameAsync
in interfaceRObjectAsync
- Parameters:
newName
- - new name of object- Returns:
- void
-
migrate
public void migrate( host, int port, int database, long timeout)
Description copied from interface:RObject
Copy object from source Redis instance to destination Redis instance
-
migrateAsync
public > migrateAsync( host, int port, int database, long timeout)
Description copied from interface:RObjectAsync
Transfer object from source Redis instance to destination Redis instance in async mode- Specified by:
migrateAsync
in interfaceRObjectAsync
- Parameters:
host
- - destination hostport
- - destination portdatabase
- - destination databasetimeout
- - maximum idle time in any moment of the communication with the destination instance in milliseconds- Returns:
- void
-
copy
public void copy( host, int port, int database, long timeout)
Description copied from interface:RObject
Copy object from source Redis instance to destination Redis instance
-
copyAsync
public > copyAsync( host, int port, int database, long timeout)
Description copied from interface:RObjectAsync
Copy object from source Redis instance to destination Redis instance in async mode- Specified by:
copyAsync
in interfaceRObjectAsync
- Parameters:
host
- - destination hostport
- - destination portdatabase
- - destination databasetimeout
- - maximum idle time in any moment of the communication with the destination instance in milliseconds- Returns:
- void
-
move
public boolean move(int database)
Description copied from interface:RObject
Move object to another database
-
moveAsync
public > moveAsync(int database)
Description copied from interface:RObjectAsync
Move object to another database in async mode- Specified by:
moveAsync
in interfaceRObjectAsync
- Parameters:
database
- - number of Redis database- Returns:
true
if key was movedfalse
if not
-
renamenx
public boolean renamenx( newName)
Description copied from interface:RObject
Rename current object key tonewName
only if new key is not exists
-
renamenxAsync
public > renamenxAsync( newName)
Description copied from interface:RObjectAsync
Rename current object key tonewName
in async mode only if new key is not exists- Specified by:
renamenxAsync
in interfaceRObjectAsync
- Parameters:
newName
- - new name of object- Returns:
true
if object has been renamed successfully andfalse
otherwise
-
delete
public boolean delete()
Description copied from interface:RObject
Deletes the object
-
deleteAsync
public > deleteAsync()
Description copied from interface:RObjectAsync
Delete object in async mode- Specified by:
deleteAsync
in interfaceRObjectAsync
- Returns:
true
if object was deletedfalse
if not
-
deleteAsync
protected > deleteAsync(... keys)
-
unlink
public boolean unlink()
Description copied from interface:RObject
Delete the objects. Actual removal will happen later asynchronously.Requires Redis 4.0+
-
unlinkAsync
public > unlinkAsync()
Description copied from interface:RObjectAsync
Delete the objects. Actual removal will happen later asynchronously.Requires Redis 4.0+
- Specified by:
unlinkAsync
in interfaceRObjectAsync
- Returns:
true
if it was exist and deleted elsefalse
-
touch
public boolean touch()
Description copied from interface:RObject
Update the last access time of an object.
-
touchAsync
public > touchAsync()
Description copied from interface:RObjectAsync
Update the last access time of an object in async mode.- Specified by:
touchAsync
in interfaceRObjectAsync
- Returns:
true
if object was touched elsefalse
-
isExists
public boolean isExists()
Description copied from interface:RObject
Check object existence
-
isExistsAsync
public > isExistsAsync()
Description copied from interface:RObjectAsync
Check object existence in async mode.- Specified by:
isExistsAsync
in interfaceRObjectAsync
- Returns:
true
if object exists andfalse
otherwise
-
getCodec
public Codec getCodec()
Description copied from interface:RObject
Returns the underlying Codec used by this RObject
-
encode
protected <io.netty.buffer.ByteBuf> encode(... values)
-
encode
protected <io.netty.buffer.ByteBuf> encode(<?> values)
-
encode
public void encode(<> params, <?> values)
-
getLockByMapKey
public getLockByMapKey( key, suffix)
-
getLockByValue
public getLockByValue( key, suffix)
-
encodeMapKeys
protected void encodeMapKeys(<> params, <?> values)
-
encodeMapValues
protected void encodeMapValues(<> params, <?> values)
-
encode
public io.netty.buffer.ByteBuf encode( value)
-
encodeMapKey
public io.netty.buffer.ByteBuf encodeMapKey( value)
-
encodeMapValue
public io.netty.buffer.ByteBuf encodeMapValue( value)
-
dump
public byte[] dump()
Description copied from interface:RObject
Returns dump of object
-
dumpAsync
public RFuture<byte[]> dumpAsync()
Description copied from interface:RObjectAsync
Returns dump of object- Specified by:
dumpAsync
in interfaceRObjectAsync
- Returns:
- dump
-
restore
public void restore(byte[] state)
Description copied from interface:RObject
Restores object using its state returned byRObject.dump()
method.
-
restoreAsync
public > restoreAsync(byte[] state)
Description copied from interface:RObjectAsync
Restores object using its state returned byRObjectAsync.dumpAsync()
method.- Specified by:
restoreAsync
in interfaceRObjectAsync
- Parameters:
state
- - state of object- Returns:
- void
-
restore
public void restore(byte[] state, long timeToLive, timeUnit)
Description copied from interface:RObject
Restores object using its state returned byRObject.dump()
method and set time to live for it.
-
restoreAsync
public > restoreAsync(byte[] state, long timeToLive, timeUnit)
Description copied from interface:RObjectAsync
Restores object using its state returned byRObjectAsync.dumpAsync()
method and set time to live for it.- Specified by:
restoreAsync
in interfaceRObjectAsync
- Parameters:
state
- - state of objecttimeToLive
- - time to live of the objecttimeUnit
- - time unit- Returns:
- void
-
restoreAndReplace
public void restoreAndReplace(byte[] state, long timeToLive, timeUnit)
Description copied from interface:RObject
Restores and replaces object if it already exists and set time to live for it.- Specified by:
restoreAndReplace
in interfaceRObject
- Parameters:
state
- - state of the objecttimeToLive
- - time to live of the objecttimeUnit
- - time unit
-
restoreAndReplaceAsync
public > restoreAndReplaceAsync(byte[] state, long timeToLive, timeUnit)
Description copied from interface:RObjectAsync
Restores and replaces object if it already exists and set time to live for it.- Specified by:
restoreAndReplaceAsync
in interfaceRObjectAsync
- Parameters:
state
- - state of the objecttimeToLive
- - time to live of the objecttimeUnit
- - time unit- Returns:
- void
-
restoreAndReplace
public void restoreAndReplace(byte[] state)
Description copied from interface:RObject
Restores and replaces object if it already exists.- Specified by:
restoreAndReplace
in interfaceRObject
- Parameters:
state
- - state of the object
-
restoreAndReplaceAsync
public > restoreAndReplaceAsync(byte[] state)
Description copied from interface:RObjectAsync
Restores and replaces object if it already exists.- Specified by:
restoreAndReplaceAsync
in interfaceRObjectAsync
- Parameters:
state
- - state of the object- Returns:
- void
-
getIdleTime
public getIdleTime()
Description copied from interface:RObject
Returns number of seconds spent since last write or read operation over this object.- Specified by:
getIdleTime
in interfaceRObject
- Returns:
- number of seconds
-
getIdleTimeAsync
public > getIdleTimeAsync()
Description copied from interface:RObjectAsync
Returns number of seconds spent since last write or read operation over this object.- Specified by:
getIdleTimeAsync
in interfaceRObjectAsync
- Returns:
- number of seconds
-
addListener
protected final <T extends name, T listener, <T,> consumer)
-
addListenerAsync
protected final <T extends > addListenerAsync( name, T listener, <T,> consumer)
-
addListener
public int addListener(ObjectListener listener)
Description copied from interface:RObject
Adds object event listener- Specified by:
addListener
in interfaceRObject
- Parameters:
listener
- - object event listener- Returns:
- listener id
- See Also:
ExpiredObjectListener
,DeletedObjectListener
-
addListenerAsync
public > addListenerAsync(ObjectListener listener)
Description copied from interface:RObjectAsync
Adds object event listener- Specified by:
addListenerAsync
in interfaceRObjectAsync
- Parameters:
listener
- - object event listener- Returns:
- listener id
- See Also:
ExpiredObjectListener
,DeletedObjectListener
-
removeListener
public void removeListener(int listenerId)
Description copied from interface:RObject
Removes object event listener- Specified by:
removeListener
in interfaceRObject
- Parameters:
listenerId
- - listener id
-
removeListenerAsync
public > removeListenerAsync(int listenerId)
Description copied from interface:RObjectAsync
Removes object event listener- Specified by:
removeListenerAsync
in interfaceRObjectAsync
- Parameters:
listenerId
- - listener id
-
removeListenersAsync
protected final void removeListenersAsync(int listenerId, > listener)
-
-