Class CoarseSessionAttributesFactory<C,V>
java.lang.Object
org.wildfly.clustering.session.infinispan.embedded.attributes.CoarseSessionAttributesFactory<C,V>
- Type Parameters:
C- the session manager context typeV- the cache value type
- All Implemented Interfaces:
AutoCloseable,org.wildfly.clustering.cache.CacheEntryCreator<String,,Map<String, Object>, Void> org.wildfly.clustering.cache.CacheEntryLocator<String,,Map<String, Object>> org.wildfly.clustering.cache.CacheEntryRemover<String>,ImmutableSessionAttributesFactory<Map<String,,Object>> SessionAttributesFactory<C,Map<String, Object>>
public class CoarseSessionAttributesFactory<C,V>
extends Object
implements SessionAttributesFactory<C,Map<String,Object>>
SessionAttributesFactory for coarse granularity sessions, where all session attributes are stored in a single cache entry.
This implementation is safe for attributes that strongly reference each other.- Author:
- Paul Ferraro
-
Constructor Summary
ConstructorsConstructorDescriptionCoarseSessionAttributesFactory(SessionAttributesFactoryConfiguration<Map<String, Object>, V> configuration, BiFunction<org.wildfly.clustering.session.ImmutableSession, C, SessionActivationNotifier> notifierFactory, Function<String, SessionAttributeActivationNotifier> detachedNotifierFactory, org.wildfly.clustering.cache.infinispan.embedded.EmbeddedCacheConfiguration infinispan) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()createImmutableSessionAttributes(String id, Map<String, Object> attributes) createSessionAttributes(String id, Map<String, Object> attributes, org.wildfly.clustering.session.ImmutableSessionMetaData metaData, C context) createValueAsync(String id, Void context) deleteAsync(org.infinispan.Cache<SessionAttributesKey, V> cache, String id) findValueAsync(String id) purgeAsync(String id) removeAsync(String id) tryValueAsync(String id) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.wildfly.clustering.cache.CacheEntryCreator
createValueMethods inherited from interface org.wildfly.clustering.cache.CacheEntryLocator
findValue, tryValueMethods inherited from interface org.wildfly.clustering.cache.CacheEntryRemover
purge, remove
-
Constructor Details
-
CoarseSessionAttributesFactory
public CoarseSessionAttributesFactory(SessionAttributesFactoryConfiguration<Map<String, Object>, V> configuration, BiFunction<org.wildfly.clustering.session.ImmutableSession, C, SessionActivationNotifier> notifierFactory, Function<String, SessionAttributeActivationNotifier> detachedNotifierFactory, org.wildfly.clustering.cache.infinispan.embedded.EmbeddedCacheConfiguration infinispan)
-
-
Method Details
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceSessionAttributesFactory<C,V>
-
createValueAsync
-
findValueAsync
-
tryValueAsync
-
removeAsync
- Specified by:
removeAsyncin interfaceorg.wildfly.clustering.cache.CacheEntryRemover<C>
-
purgeAsync
- Specified by:
purgeAsyncin interfaceorg.wildfly.clustering.cache.CacheEntryRemover<C>
-
deleteAsync
public CompletionStage<Void> deleteAsync(org.infinispan.Cache<SessionAttributesKey, V> cache, String id) -
createImmutableSessionAttributes
public Map<String,Object> createImmutableSessionAttributes(String id, Map<String, Object> attributes) - Specified by:
createImmutableSessionAttributesin interfaceImmutableSessionAttributesFactory<C>
-
createSessionAttributes
public SessionAttributes createSessionAttributes(String id, Map<String, Object> attributes, org.wildfly.clustering.session.ImmutableSessionMetaData metaData, C context) - Specified by:
createSessionAttributesin interfaceSessionAttributesFactory<C,V>
-