Class HazelcastSAMLMessageStore

java.lang.Object
org.pac4j.saml.store.HazelcastSAMLMessageStore
All Implemented Interfaces:
org.pac4j.core.store.Store<String,org.opensaml.core.xml.XMLObject>, SAMLMessageStore

public class HazelcastSAMLMessageStore extends Object implements SAMLMessageStore
Class implements store of SAML messages and uses Hazelcast as underlying dataStore. As the XMLObjects can't be serialized (which could lead to problems during failover), the messages are transformed into SAMLObject which internally marshalls the content into XML during serialization. Base64 encoding / decoding is also used to reduce space allocation.
Since:
5.0.1
Author:
Francesco Chicchiriccò
  • Constructor Details

    • HazelcastSAMLMessageStore

      public HazelcastSAMLMessageStore(com.hazelcast.core.HazelcastInstance hazelcastInstance)

      Constructor for HazelcastSAMLMessageStore.

      Parameters:
      hazelcastInstance - a HazelcastInstance object
  • Method Details

    • get

      public Optional<org.opensaml.core.xml.XMLObject> get(String messageID)
      Specified by:
      get in interface org.pac4j.core.store.Store<String,org.opensaml.core.xml.XMLObject>
    • set

      public void set(String messageID, org.opensaml.core.xml.XMLObject message)
      Specified by:
      set in interface org.pac4j.core.store.Store<String,org.opensaml.core.xml.XMLObject>
    • remove

      public void remove(String messageID)
      Specified by:
      remove in interface org.pac4j.core.store.Store<String,org.opensaml.core.xml.XMLObject>