Class AddressingPolicyValidator

java.lang.Object
com.sun.xml.ws.addressing.policy.AddressingPolicyValidator
All Implemented Interfaces:
PolicyAssertionValidator

public class AddressingPolicyValidator extends Object implements PolicyAssertionValidator
This class validates the Addressing assertions. If the assertion is wsam:Addressing, it makes sure that only valid assertions are nested.
Author:
japod, Rama Pulavarthi
  • Constructor Details

    • AddressingPolicyValidator

      public AddressingPolicyValidator()
      Creates a new instance of AddressingPolicyValidator
  • Method Details

    • validateClientSide

      public PolicyAssertionValidator.Fitness validateClientSide(PolicyAssertion assertion)
      Description copied from interface: PolicyAssertionValidator
      An implementation of this method must return:
      • Fitness.UNKNOWN if the policy assertion type is not recognized
      • Fitness.SUPPORTED if the policy assertion is supported in the client-side context
      • Fitness.UNSUPPORTED if the policy assertion is recognized however it's content is not supported. For each assetion that will be eventually marked with this validation value, the policy processor will log a WARNING message however an attempt to call the web service will be made.
      • Fitness.INVALID if the policy assertion is recognized however its content (value, parameters, nested assertions) is invalid. For each assetion that will be eventually marked with this validation value, the policy processor will log a SEVERE error and throw an exception. No further attempts to call the web service will be made.
      Specified by:
      validateClientSide in interface PolicyAssertionValidator
      Parameters:
      assertion - A policy asssertion (See PolicyAssertion). May contain nested policies and assertions.
      Returns:
      fitness of the assertion on in the client-side context. Must not be null.
    • validateServerSide

      public PolicyAssertionValidator.Fitness validateServerSide(PolicyAssertion assertion)
      Description copied from interface: PolicyAssertionValidator
      An implementation of this method must return:
      • Fitness.UNKNOWN if the policy assertion type is not recognized
      • Fitness.SUPPORTED if the policy assertion is supported in the server-side context
      • Fitness.UNSUPPORTED if the policy assertion is recognized however it's content is not supported.
      • Fitness.INVALID if the policy assertion is recognized however its content (value, parameters, nested assertions) is invalid.
      For each assetion that will be eventually marked with validation value of UNKNOWN, UNSUPPORTED or INVALID, the policy processor will log a SEVERE error and throw an exception.
      Specified by:
      validateServerSide in interface PolicyAssertionValidator
      Parameters:
      assertion - A policy asssertion (See PolicyAssertion). May contain nested policies and assertions.
      Returns:
      fitness of the assertion on in the server-side context. Must not be null.
    • declareSupportedDomains

      public String[] declareSupportedDomains()
      Description copied from interface: PolicyAssertionValidator
      Each service provider that implements this SPI must make sure to identify all possible domains it supports. This operation must be implemented as idempotent (must return same values on multiple calls).
      It is legal for two or more PolicyAssertionValidators to support the same domain. In such case, the most significant result returned from validation methods will be eventually assigned to the assertion. The significance of validation results is as follows (from most to least significant):
      1. SUPPORTED
      2. UNSUPPORTED
      3. INVALID
      4. UNKNOWN
      Specified by:
      declareSupportedDomains in interface PolicyAssertionValidator
      Returns:
      String array holding String representations of identifiers of all supported domains. Usually a domain identifier is represented by a namespace.