Package com.github.ddth.queue.impl
Class BaseRedisQueueFactory<T extends RedisQueue<ID,DATA>,ID,DATA>
- java.lang.Object
-
- com.github.ddth.queue.impl.AbstractQueueFactory<T,ID,DATA>
-
- com.github.ddth.queue.impl.BaseRedisQueueFactory<T,ID,DATA>
-
- All Implemented Interfaces:
IQueueFactory<ID,DATA>,AutoCloseable
- Direct Known Subclasses:
RedisQueueFactory
public abstract class BaseRedisQueueFactory<T extends RedisQueue<ID,DATA>,ID,DATA> extends AbstractQueueFactory<T,ID,DATA>
Base factory to createBaseRedisQueueinstances.- Since:
- 0.6.2.6
- Author:
- Thanh Ba Nguyen
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanmyOwnRedisFlag to mark if the Redis resource (e.g.static StringSPEC_FIELD_HASH_NAMEstatic StringSPEC_FIELD_HOST_AND_PORTstatic StringSPEC_FIELD_LIST_NAMEstatic StringSPEC_FIELD_PASSWORDstatic StringSPEC_FIELD_SORTED_SET_NAME
-
Constructor Summary
Constructors Constructor Description BaseRedisQueueFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Destroy method.StringgetDefaultHashName()Name of the Redis hash to store queue messages.protected com.github.ddth.commons.redis.JedisConnectorgetDefaultJedisConnector()If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).StringgetDefaultListName()Name of the Redis list to store queue message ids.StringgetDefaultPassword()Redis' password.StringgetDefaultSortedSetName()Name of the Redis sorted-set to store ephemeral message ids.BaseRedisQueueFactory<T,ID,DATA>setDefaultHashName(String defaultHashName)Name of the Redis hash to store queue messages.BaseRedisQueueFactory<T,ID,DATA>setDefaultJedisConnector(com.github.ddth.commons.redis.JedisConnector jedisConnector)If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).protected BaseRedisQueueFactory<T,ID,DATA>setDefaultJedisConnector(com.github.ddth.commons.redis.JedisConnector jedisConnector, boolean setMyOwnRedis)If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).BaseRedisQueueFactory<T,ID,DATA>setDefaultListName(String defaultListName)Name of the Redis list to store queue message ids.BaseRedisQueueFactory<T,ID,DATA>setDefaultPassword(String defaultPassword)Redis' password.BaseRedisQueueFactory<T,ID,DATA>setDefaultSortedSetName(String defaultSortedSetName)Name of the Redis sorted-set to store ephemeral message ids.-
Methods inherited from class com.github.ddth.queue.impl.AbstractQueueFactory
close, createAndInitQueue, createQueueInstance, getDefaultEphemeralDisabled, getDefaultEphemeralMaxSize, getDefaultMaxSize, getQueue, init, initQueue, isDefaultEphemeralDisabled, setDefaultEphemeralDisabled, setDefaultEphemeralMaxSize, setDefaultMaxSize
-
-
-
-
Field Detail
-
SPEC_FIELD_HASH_NAME
public static final String SPEC_FIELD_HASH_NAME
- See Also:
- Constant Field Values
-
SPEC_FIELD_LIST_NAME
public static final String SPEC_FIELD_LIST_NAME
- See Also:
- Constant Field Values
-
SPEC_FIELD_SORTED_SET_NAME
public static final String SPEC_FIELD_SORTED_SET_NAME
- See Also:
- Constant Field Values
-
SPEC_FIELD_HOST_AND_PORT
public static final String SPEC_FIELD_HOST_AND_PORT
- See Also:
- Constant Field Values
-
SPEC_FIELD_PASSWORD
public static final String SPEC_FIELD_PASSWORD
- See Also:
- Constant Field Values
-
myOwnRedis
protected boolean myOwnRedis
Flag to mark if the Redis resource (e.g. Redis client pool) is created and handled by the factory.
-
-
Method Detail
-
getDefaultJedisConnector
protected com.github.ddth.commons.redis.JedisConnector getDefaultJedisConnector()
If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).- Returns:
- Since:
- 0.6.2.5
-
setDefaultJedisConnector
protected BaseRedisQueueFactory<T,ID,DATA> setDefaultJedisConnector(com.github.ddth.commons.redis.JedisConnector jedisConnector, boolean setMyOwnRedis)
If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).- Parameters:
jedisConnector-setMyOwnRedis-- Returns:
- Since:
- 0.7.1
-
setDefaultJedisConnector
public BaseRedisQueueFactory<T,ID,DATA> setDefaultJedisConnector(com.github.ddth.commons.redis.JedisConnector jedisConnector)
If allBaseRedisQueueinstances are connecting to one Redis server or cluster, it's a good idea to pre-create aJedisConnectorinstance and share it amongstBaseRedisQueueinstances created from this factory by assigning it todefaultJedisConnector(seesetDefaultJedisConnector(JedisConnector)).- Parameters:
jedisConnector-- Returns:
- Since:
- 0.6.2.5
-
getDefaultPassword
public String getDefaultPassword()
Redis' password.- Returns:
- Since:
- 0.6.2
-
setDefaultPassword
public BaseRedisQueueFactory<T,ID,DATA> setDefaultPassword(String defaultPassword)
Redis' password.- Parameters:
defaultPassword-- Since:
- 0.6.2
-
getDefaultHashName
public String getDefaultHashName()
Name of the Redis hash to store queue messages.- Returns:
- Since:
- 0.6.2
-
setDefaultHashName
public BaseRedisQueueFactory<T,ID,DATA> setDefaultHashName(String defaultHashName)
Name of the Redis hash to store queue messages.- Parameters:
defaultHashName-- Since:
- 0.6.2
-
getDefaultListName
public String getDefaultListName()
Name of the Redis list to store queue message ids.- Returns:
- Since:
- 0.6.2
-
setDefaultListName
public BaseRedisQueueFactory<T,ID,DATA> setDefaultListName(String defaultListName)
Name of the Redis list to store queue message ids.- Parameters:
defaultListName-- Since:
- 0.6.2
-
getDefaultSortedSetName
public String getDefaultSortedSetName()
Name of the Redis sorted-set to store ephemeral message ids.- Returns:
- Since:
- 0.6.2
-
setDefaultSortedSetName
public BaseRedisQueueFactory<T,ID,DATA> setDefaultSortedSetName(String defaultSortedSetName)
Name of the Redis sorted-set to store ephemeral message ids.- Parameters:
defaultSortedSetName-- Since:
- 0.6.2
-
destroy
public void destroy()
Destroy method.- Overrides:
destroyin classAbstractQueueFactory<T extends RedisQueue<ID,DATA>,ID,DATA>- Since:
- 0.6.2.6
-
-