Class HotRodUserSessionMapStorage<K>
java.lang.Object
org.keycloak.models.map.storage.chm.ConcurrentHashMapStorage<K,MapUserSessionEntity,UserSessionModel,CrudOperations<MapUserSessionEntity,UserSessionModel>>
org.keycloak.models.map.storage.hotRod.userSession.HotRodUserSessionMapStorage<K>
- All Implemented Interfaces:
KeycloakTransaction
,HasRealmId
,MapStorage<MapUserSessionEntity,
UserSessionModel>
public class HotRodUserSessionMapStorage<K>
extends ConcurrentHashMapStorage<K,MapUserSessionEntity,UserSessionModel,CrudOperations<MapUserSessionEntity,UserSessionModel>>
-
Nested Class Summary
Nested classes/interfaces inherited from class org.keycloak.models.map.storage.chm.ConcurrentHashMapStorage
ConcurrentHashMapStorage.MapOperation, ConcurrentHashMapStorage.MapTaskWithValue, ConcurrentHashMapStorage.TaskKey, ConcurrentHashMapStorage.TaskMap
-
Field Summary
Fields inherited from class org.keycloak.models.map.storage.chm.ConcurrentHashMapStorage
active, cloner, fieldPredicates, keyConverter, map, realmIdEntityField, rollback, tasks
-
Constructor Summary
ConstructorDescriptionHotRodUserSessionMapStorage
(CrudOperations<MapUserSessionEntity, UserSessionModel> map, StringKeyConverter<K> keyConverter, DeepCloner cloner, Map<SearchableModelField<? super UserSessionModel>, MapModelCriteriaBuilder.UpdatePredicatesFunc<K, MapUserSessionEntity, UserSessionModel>> fieldPredicates, ConcurrentHashMapStorage<String, MapAuthenticatedClientSessionEntity, AuthenticatedClientSessionModel, CrudOperations<MapAuthenticatedClientSessionEntity, AuthenticatedClientSessionModel>> clientSessionStore) -
Method Summary
Modifier and TypeMethodDescriptioncreate
(MapUserSessionEntity value) Instructs this storage to add a new value into the underlying store on commit in the context of the current transaction.boolean
Instructs this storage to delete a value associated with the identifierkey
from the underlying store upon commit.long
delete
(QueryParameters<UserSessionModel> queryParameters) Instructs this transaction to remove values (identified bymcb
filter) from the underlying store upon commit.Provides possibility to lookup for values by akey
in the underlying store with respect to changes done in current transaction.read
(QueryParameters<UserSessionModel> queryParameters) Returns the stream of records that match given criteria and includes changes made in this transaction, i.e.Methods inherited from class org.keycloak.models.map.storage.chm.ConcurrentHashMapStorage
addTask, begin, commit, exists, getCount, getRealmId, getRollbackOnly, isActive, registerEntityForChanges, rollback, setRealmId, setRollbackOnly, updateIfChanged
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.keycloak.models.map.storage.MapStorage
exists
-
Constructor Details
-
HotRodUserSessionMapStorage
public HotRodUserSessionMapStorage(CrudOperations<MapUserSessionEntity, UserSessionModel> map, StringKeyConverter<K> keyConverter, DeepCloner cloner, Map<SearchableModelField<? super UserSessionModel>, MapModelCriteriaBuilder.UpdatePredicatesFunc<K, MapUserSessionEntity, UserSessionModel>> fieldPredicates, ConcurrentHashMapStorage<String, MapAuthenticatedClientSessionEntity, AuthenticatedClientSessionModel, CrudOperations<MapAuthenticatedClientSessionEntity, AuthenticatedClientSessionModel>> clientSessionStore)
-
-
Method Details
-
read
Description copied from interface:MapStorage
Provides possibility to lookup for values by akey
in the underlying store with respect to changes done in current transaction. Updates to the returned instance would be visible in the current transaction and will propagate into the underlying store upon commit. IfV
implementsExpirableEntity
this method should not return entities that are expired. SeeExpirableEntity
JavaDoc for more details.- Specified by:
read
in interfaceMapStorage<MapUserSessionEntity,
UserSessionModel> - Overrides:
read
in classConcurrentHashMapStorage<K,
MapUserSessionEntity, UserSessionModel, CrudOperations<MapUserSessionEntity, UserSessionModel>> - Parameters:
sKey
- identifier of a value- Returns:
- a value associated with the given
key
-
read
Description copied from class:ConcurrentHashMapStorage
Returns the stream of records that match given criteria and includes changes made in this transaction, i.e. the result contains updates and excludes records that have been deleted in this transaction.- Specified by:
read
in interfaceMapStorage<MapUserSessionEntity,
UserSessionModel> - Overrides:
read
in classConcurrentHashMapStorage<K,
MapUserSessionEntity, UserSessionModel, CrudOperations<MapUserSessionEntity, UserSessionModel>> - Parameters:
queryParameters
- parameters for the query like firstResult, maxResult, requested ordering, etc.- Returns:
- values that fulfill the given criteria, that are updated based on changes in the current transaction
-
create
Description copied from interface:MapStorage
Instructs this storage to add a new value into the underlying store on commit in the context of the current transaction.Updates to the returned instances of
V
would be visible in the current transaction and will propagate into the underlying store upon commit. The ID of the entity passed in the parameter might change to a different value in the returned value if the underlying storage decided this was necessary. If the ID of the entity was null before, it will be set on the returned value.- Specified by:
create
in interfaceMapStorage<MapUserSessionEntity,
UserSessionModel> - Overrides:
create
in classConcurrentHashMapStorage<K,
MapUserSessionEntity, UserSessionModel, CrudOperations<MapUserSessionEntity, UserSessionModel>> - Parameters:
value
- the value- Returns:
- Entity representing the
value
in the store. It may or may not be the same instance asvalue
.
-
delete
Description copied from interface:MapStorage
Instructs this storage to delete a value associated with the identifierkey
from the underlying store upon commit.- Specified by:
delete
in interfaceMapStorage<MapUserSessionEntity,
UserSessionModel> - Overrides:
delete
in classConcurrentHashMapStorage<K,
MapUserSessionEntity, UserSessionModel, CrudOperations<MapUserSessionEntity, UserSessionModel>> - Parameters:
key
- identifier of a value- Returns:
- Returns
true
if the object has been deleted or result cannot be determined,false
otherwise.
-
delete
Description copied from interface:MapStorage
Instructs this transaction to remove values (identified bymcb
filter) from the underlying store upon commit.- Specified by:
delete
in interfaceMapStorage<MapUserSessionEntity,
UserSessionModel> - Overrides:
delete
in classConcurrentHashMapStorage<K,
MapUserSessionEntity, UserSessionModel, CrudOperations<MapUserSessionEntity, UserSessionModel>> - Parameters:
queryParameters
- parameters for the query like firstResult, maxResult, requested ordering, etc.- Returns:
- number of removed objects (might return
-1
if not supported)
-