Class CramMD5Mechanism

java.lang.Object
org.apache.qpid.protonj2.engine.sasl.client.AbstractMechanism
org.apache.qpid.protonj2.engine.sasl.client.CramMD5Mechanism
All Implemented Interfaces:
Mechanism

public class CramMD5Mechanism extends AbstractMechanism
Implements the SASL CRAM-MD5 authentication Mechanism.
  • Field Details

    • CRAM_MD5

      public static final Symbol CRAM_MD5
      A singleton instance of the symbolic mechanism name.
  • Constructor Details

    • CramMD5Mechanism

      public CramMD5Mechanism()
  • Method Details

    • getName

      public Symbol getName()
      Returns:
      the well known name of this SASL mechanism.
    • isApplicable

      public boolean isApplicable(SaslCredentialsProvider credentials)
      Description copied from interface: Mechanism
      Allows the Mechanism to determine if it is a valid choice based on the configured credentials at the time of selection.
      Parameters:
      credentials - the login credentials available at the time of mechanism selection.
      Returns:
      true if the mechanism can be used with the provided credentials
    • getInitialResponse

      public ProtonBuffer getInitialResponse(SaslCredentialsProvider credentials)
      Description copied from interface: Mechanism
      Create an initial response based on selected mechanism. May be null if there is no initial response.
      Specified by:
      getInitialResponse in interface Mechanism
      Overrides:
      getInitialResponse in class AbstractMechanism
      Parameters:
      credentials - The credentials that are supplied for this SASL negotiation.
      Returns:
      the initial response, or null if there isn't one.
    • getChallengeResponse

      public ProtonBuffer getChallengeResponse(SaslCredentialsProvider credentials, ProtonBuffer challenge) throws SaslException
      Description copied from interface: Mechanism
      Create a response based on a given challenge from the remote peer.
      Specified by:
      getChallengeResponse in interface Mechanism
      Overrides:
      getChallengeResponse in class AbstractMechanism
      Parameters:
      credentials - The credentials that are supplied for this SASL negotiation.
      challenge - The challenge that this Mechanism should response to.
      Returns:
      the response that answers the given challenge.
      Throws:
      SaslException - if an error occurs generating the challenge response.
    • verifyCompletion

      public void verifyCompletion() throws SaslException
      Description copied from interface: Mechanism
      Verifies that the SASL exchange has completed successfully. This is an opportunity for the mechanism to ensure that all mandatory steps have been completed successfully and to cleanup and resources that are held by this Mechanism.
      Specified by:
      verifyCompletion in interface Mechanism
      Overrides:
      verifyCompletion in class AbstractMechanism
      Throws:
      SaslException - if the outcome of the SASL exchange is not valid for this Mechanism