Class SingleUseObjectTransaction
java.lang.Object
org.keycloak.models.sessions.infinispan.remote.transaction.SingleUseObjectTransaction
- All Implemented Interfaces:
NonBlockingTransaction
Syntactic sugar for
RemoteInfinispanKeycloakTransaction<String, SingleUseObjectValueEntity, ConditionalRemover<String,
SingleUseObjectValueEntity>>
-
Constructor Summary
ConstructorsConstructorDescriptionSingleUseObjectTransaction
(org.infinispan.client.hotrod.RemoteCache<String, SingleUseObjectValueEntity> cache) -
Method Summary
Modifier and TypeMethodDescriptionvoid
asyncCommit
(org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage, Consumer<DatabaseUpdate> databaseUpdates) Asynchronously commits the transaction.void
asyncRollback
(org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage) Asynchronously rollbacks the transaction.org.infinispan.client.hotrod.RemoteCache<String,
SingleUseObjectValueEntity> getCache()
void
put
(String key, SingleUseObjectValueEntity value, long lifespan, TimeUnit timeUnit) void
void
replace
(String key, SingleUseObjectValueEntity value, int lifespan, TimeUnit timeUnit)
-
Constructor Details
-
SingleUseObjectTransaction
public SingleUseObjectTransaction(org.infinispan.client.hotrod.RemoteCache<String, SingleUseObjectValueEntity> cache)
-
-
Method Details
-
asyncCommit
public void asyncCommit(org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage, Consumer<DatabaseUpdate> databaseUpdates) Description copied from interface:NonBlockingTransaction
Asynchronously commits the transaction.The implementation should not block the thread and add any (or none)
CompletionStage
into thestage
.Any blocking operation should be consumed by the
databaseUpdates
. It will be executed at a later instant.- Specified by:
asyncCommit
in interfaceNonBlockingTransaction
- Parameters:
stage
- TheAggregateCompletionStage
to collect theCompletionStage
.databaseUpdates
- TheConsumer
to use for blocking/database updates.
-
asyncRollback
public void asyncRollback(org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage) Description copied from interface:NonBlockingTransaction
Asynchronously rollbacks the transaction.The implementation should not block the thread and add any (or none)
CompletionStage
into thestage
.- Specified by:
asyncRollback
in interfaceNonBlockingTransaction
- Parameters:
stage
- TheAggregateCompletionStage
to collect theCompletionStage
.
-
put
-
replace
-
remove
-
get
-
getCache
-