Class DefaultSignaturePolicyValidatorLoader

java.lang.Object
eu.europa.esig.dss.spi.policy.DefaultSignaturePolicyValidatorLoader
All Implemented Interfaces:
SignaturePolicyValidatorLoader

public class DefaultSignaturePolicyValidatorLoader extends Object implements SignaturePolicyValidatorLoader
Loads a relevant SignaturePolicyValidator based on the policy content
  • Constructor Details

    • DefaultSignaturePolicyValidatorLoader

      public DefaultSignaturePolicyValidatorLoader()
      Default constructor instantiating object with null SignaturePolicyValidator
  • Method Details

    • defaultOnlySignaturePolicyValidatorLoader

      public static DefaultSignaturePolicyValidatorLoader defaultOnlySignaturePolicyValidatorLoader(SignaturePolicyValidator defaultSignaturePolicyValidator)
      Creates a new SignaturePolicyValidatorLoader running the signature policy validation using the defaultSignaturePolicyValidator. The default implementation will be used on all signature policy hash calculations.
      Parameters:
      defaultSignaturePolicyValidator - SignaturePolicyValidator
      Returns:
      DefaultSignaturePolicyValidatorLoader
    • defaultUnlessSpecifiedSignaturePolicyValidatorLoader

      public static DefaultSignaturePolicyValidatorLoader defaultUnlessSpecifiedSignaturePolicyValidatorLoader(SignaturePolicyValidator defaultSignaturePolicyValidator)
      Creates a new SignaturePolicyValidatorLoader running the signature policy validation using the defaultSignaturePolicyValidator. The default implementation will be used on all signature policy hash calculations, unless a "HashAsInTechnicalSpecification" parameter is set within the Signature Policy Identifier.
      Parameters:
      defaultSignaturePolicyValidator - SignaturePolicyValidator
      Returns:
      DefaultSignaturePolicyValidatorLoader
    • policyBasedSignaturePolicyValidatorLoader

      public static DefaultSignaturePolicyValidatorLoader policyBasedSignaturePolicyValidatorLoader()
      Creates a new SignaturePolicyValidatorLoader running the signature policy validation loading the SignaturePolicyValidator based on the signature policy's specification. The supported SignaturePolicyValidators can be listed within a "/resources/META-INF/services/eu.europa.esig.dss.spi.policy.SignaturePolicyValidator" file. The first SignaturePolicyValidator matching the signature policy will be selected. If not defined explicitly, one of the default signature policies will be used.
      Returns:
      DefaultSignaturePolicyValidatorLoader
    • setDefaultSignaturePolicyValidator

      public void setDefaultSignaturePolicyValidator(SignaturePolicyValidator defaultSignaturePolicyValidator)
      This method sets a SignaturePolicyValidator to be used for default signature policy processing according to the signature format (when SignaturePolicy.hashAsInTechnicalSpecification == false)
      Parameters:
      defaultSignaturePolicyValidator - SignaturePolicyValidator
    • setSupportHashAsInTechnicalSpecification

      public void setSupportHashAsInTechnicalSpecification(boolean supportHashAsInTechnicalSpecification)
      Sets whether the SignaturePolicy.hashAsInTechnicalSpecification attribute is supported. If set to TRUE, the behavior of the loader will change based on the attribute presence. Otherwise, it will be ignored.

      Default : TRUE (SignaturePolicy.hashAsInTechnicalSpecification attribute is supported)

      Parameters:
      supportHashAsInTechnicalSpecification - whether HashAsInTechnicalSpecification attribute is supported
    • loadValidator

      public SignaturePolicyValidator loadValidator(SignaturePolicy signaturePolicy)
      Loads with a ServiceLoader and returns the relevant validator for a SignaturePolicy
      Specified by:
      loadValidator in interface SignaturePolicyValidatorLoader
      Parameters:
      signaturePolicy - SignaturePolicy to get a relevant validator for
      Returns:
      SignaturePolicyValidator