Class AbstractGraphIdProvider
- java.lang.Object
-
- org.openiam.cache.AbstractRedisCacheProvider
-
- org.openiam.common.beans.cache.AbstractBackendRedisCache
-
- org.openiam.authmanager.graph.provider.AbstractGraphIdProvider
-
- All Implemented Interfaces:
Sweepable
- Direct Known Subclasses:
CosmoDBGraphIDProvider
,JanusGraphIDProvider
,NeptuneGraphIDProvider
public abstract class AbstractGraphIdProvider extends AbstractBackendRedisCache implements Sweepable
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.openiam.cache.AbstractRedisCacheProvider
AbstractRedisCacheProvider.CacheType, AbstractRedisCacheProvider.Context
-
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.transaction.support.TransactionTemplate
transactionTemplate
-
Fields inherited from class org.openiam.cache.AbstractRedisCacheProvider
log
-
-
Constructor Summary
Constructors Constructor Description AbstractGraphIdProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Object
buildId(VertexType vertexType, String openiamId)
boolean
contains(VertexType vertexType, String openiamId)
abstract Object
convertId(String graphId)
void
fixRabbitMQFanoutIssue()
OE-2027 Sometimes, messages to the method do not reach the destination.protected AbstractRedisCacheProvider.CacheType
getCacheType()
void
init()
void
refreshTemporaryCacheEntry(VertexType type, String openiamId, String graphId)
void
sweep()
Gets the graph cache from redis, and puts it locally, so that you don't go to redis too often Method called by-
Methods inherited from class org.openiam.common.beans.cache.AbstractBackendRedisCache
getContext
-
Methods inherited from class org.openiam.cache.AbstractRedisCacheProvider
buildCacheKey, buildCacheKey
-
-
-
-
Method Detail
-
init
@PostConstruct public void init()
-
buildId
public Object buildId(VertexType vertexType, String openiamId) throws NoGraphIdFoundException
- Throws:
NoGraphIdFoundException
-
contains
public boolean contains(VertexType vertexType, String openiamId)
-
fixRabbitMQFanoutIssue
@Scheduled(fixedRateString="${org.openiam.graph.id.rabbitmq.fanout.fix.threadsweep}", initialDelayString="${org.openiam.graph.id.rabbitmq.fanout.fix.threadsweep}") public void fixRabbitMQFanoutIssue()
OE-2027 Sometimes, messages to the method do not reach the destination. This can happen if, for example a network partition happen, and the FANOUT message from RabbitmQ gets dropped This thread will fix itThe sweep time is the same as for
-
sweep
public void sweep()
Gets the graph cache from redis, and puts it locally, so that you don't go to redis too often Method called by
-
refreshTemporaryCacheEntry
public void refreshTemporaryCacheEntry(VertexType type, String openiamId, String graphId)
-
getCacheType
protected AbstractRedisCacheProvider.CacheType getCacheType()
- Specified by:
getCacheType
in classAbstractRedisCacheProvider
-
-