Class BindingDescriptor

All Implemented Interfaces:
Predicate<ProfileRequestContext>, Component, DestructableComponent, IdentifiableComponent, IdentifiedComponent, InitializableComponent

public class BindingDescriptor extends AbstractIdentifiableInitializableComponent implements Predicate<ProfileRequestContext>
A class that describes a SAML binding and encapsulates information required for profile actions to interact with them.

Configuration logic should expose the usable bindings to profile actions through instances of this class.

  • Field Details

    • activationCondition

      @Nonnull private Predicate<ProfileRequestContext> activationCondition
      Predicate that must be true for this flow to be usable for a given request.
    • synchronous

      private boolean synchronous
      Identifies a binding that is direct request/response between two parties (i.e., SOAP).
    • artifact

      private boolean artifact
      Identifies a binding that relies on SAML artifacts.
    • signatureCapable

      private boolean signatureCapable
      Indicates whether the binding provides a built-in signing mechanism.
    • shortName

      @Nullable @NotEmpty private String shortName
      A short name for the binding.
  • Constructor Details

    • BindingDescriptor

      public BindingDescriptor()
      Constructor.
  • Method Details

    • setActivationCondition

      public void setActivationCondition(@Nonnull Predicate<ProfileRequestContext> condition)
      Set the activation condition in the form of a Predicate such that iff the condition evaluates to true should the corresponding binding be allowed/possible.
      Parameters:
      condition - predicate that controls activation of the binding
    • isSynchronous

      public boolean isSynchronous()
      Get whether the binding is synchronous (direct request/response, typically SOAP).
      Returns:
      true iff the binding is synchronous
    • setSynchronous

      public void setSynchronous(boolean flag)
      Set whether the binding is synchronous (direct request/response, typically SOAP).
      Parameters:
      flag - flag to set
    • isArtifact

      public boolean isArtifact()
      Get whether the binding is artifact-based.
      Returns:
      true iff the binding is artifact-based
    • setArtifact

      public void setArtifact(boolean flag)
      Set whether the binding is artifact-based.
      Parameters:
      flag - flag to set
    • isSignatureCapable

      public boolean isSignatureCapable()
      Get whether the binding provides a message signature capability.
      Returns:
      true iff the binding provides a message signature capability
    • setSignatureCapable

      public void setSignatureCapable(boolean flag)
      Set whether the binding provides a message signature capability.
      Parameters:
      flag - flag to set
    • getShortName

      @Nullable @NotEmpty public String getShortName()
      Get a short/concise name for the binding.
      Returns:
      the short name
    • setShortName

      public void setShortName(@Nullable @NotEmpty String name)
      Set a short/concise name for the binding.
      Parameters:
      name - name to set
    • test

      public boolean test(@Nullable ProfileRequestContext input)
      Specified by:
      test in interface Predicate<ProfileRequestContext>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object