Class WebServiceFeatureList

java.lang.Object
java.util.AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
com.sun.xml.ws.binding.WebServiceFeatureList
All Implemented Interfaces:
WSFeatureList, Iterable<jakarta.xml.ws.WebServiceFeature>, Map<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>

public final class WebServiceFeatureList extends AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature> implements WSFeatureList
Represents a list of WebServiceFeatures that has bunch of utility methods pertaining to web service features.
Author:
Rama Pulavarthi
  • Constructor Details

    • WebServiceFeatureList

      public WebServiceFeatureList()
    • WebServiceFeatureList

      public WebServiceFeatureList(@NotNull jakarta.xml.ws.WebServiceFeature... features)
    • WebServiceFeatureList

      public WebServiceFeatureList(WebServiceFeatureList features)
    • WebServiceFeatureList

      public WebServiceFeatureList(@NotNull Class<?> endpointClass)
      Creates a list by reading featuers from the annotation on a class.
  • Method Details

    • toList

      public static WebServiceFeatureList toList(Iterable<jakarta.xml.ws.WebServiceFeature> features)
    • validate

      public void validate()
    • parseAnnotations

      public void parseAnnotations(Iterable<Annotation> annIt)
      Adds the corresponding features to the list for feature annotations(i.e which have WebServiceFeatureAnnotation meta annotation)
      Parameters:
      annIt - collection of annotations(that can have non-feature annotations)
    • getFeature

      public static jakarta.xml.ws.WebServiceFeature getFeature(Annotation a)
      Returns a corresponding feature for a feature annotation(i.e which has WebServiceFeatureAnnotation meta annotation)
      Returns:
      corresponding feature for the annotation null, if the annotation is nota feature annotation
    • parseAnnotations

      public void parseAnnotations(Class<?> endpointClass)
      Parameters:
      endpointClass - web service impl class
    • iterator

      public Iterator<jakarta.xml.ws.WebServiceFeature> iterator()
      Specified by:
      iterator in interface Iterable<jakarta.xml.ws.WebServiceFeature>
    • toArray

      @NotNull public jakarta.xml.ws.WebServiceFeature[] toArray()
      Description copied from interface: WSFeatureList
      Obtains all the features in the array.
      Specified by:
      toArray in interface WSFeatureList
    • isEnabled

      public boolean isEnabled(@NotNull Class<? extends jakarta.xml.ws.WebServiceFeature> feature)
      Description copied from interface: WSFeatureList
      Checks if a particular WebServiceFeature is enabled.
      Specified by:
      isEnabled in interface WSFeatureList
      Returns:
      true if enabled.
    • contains

      public boolean contains(@NotNull Class<? extends jakarta.xml.ws.WebServiceFeature> feature)
    • get

      @Nullable public <F extends jakarta.xml.ws.WebServiceFeature> F get(@NotNull Class<F> featureType)
      Description copied from interface: WSFeatureList
      Gets a WebServiceFeature of the specific type.
      Specified by:
      get in interface WSFeatureList
      Parameters:
      featureType - The type of the feature to retrieve.
      Returns:
      If the feature is present and enabled, return a non-null instance. Otherwise null.
    • add

      public void add(@NotNull jakarta.xml.ws.WebServiceFeature f)
      Adds a feature to the list if it's not already added.
    • addAll

      public void addAll(@NotNull Iterable<jakarta.xml.ws.WebServiceFeature> list)
      Adds features to the list if it's not already added.
    • equals

      public boolean equals(Object other)
      Specified by:
      equals in interface Map<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
      Overrides:
      equals in class AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
    • toString

      public String toString()
      Overrides:
      toString in class AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
    • mergeFeatures

      public void mergeFeatures(@NotNull Iterable<jakarta.xml.ws.WebServiceFeature> features, boolean reportConflicts)
      Merges the extra features that are not already set on binding. i.e, if a feature is set already on binding through some other API the corresponding wsdlFeature is not set.
      Specified by:
      mergeFeatures in interface WSFeatureList
      Parameters:
      features - Web Service features that need to be merged with already configured features.
      reportConflicts - If true, checks if the feature setting in WSDL (wsdl extension or policy configuration) conflicts with feature setting in Deployed Service and logs warning if there are any conflicts.
    • mergeFeatures

      public void mergeFeatures(jakarta.xml.ws.WebServiceFeature[] features, boolean reportConflicts)
      Description copied from interface: WSFeatureList
      Merges the extra features that are not already set on binding. i.e, if a feature is set already on binding through some other API the corresponding wsdlFeature is not set.
      Specified by:
      mergeFeatures in interface WSFeatureList
      Parameters:
      features - Web Service features that need to be merged with already configured features.
      reportConflicts - If true, checks if the feature setting in WSDL (wsdl extension or policy configuration) conflicts with feature setting in Deployed Service and logs warning if there are any conflicts.
    • mergeFeatures

      public void mergeFeatures(@NotNull WSDLPort wsdlPort, boolean honorWsdlRequired, boolean reportConflicts)
      Extracts features from WSDLFeaturedObject.getFeatures(). Extra features that are not already set on binding. i.e, if a feature is set already on binding through some other API the corresponding wsdlFeature is not set.
      Parameters:
      wsdlPort - WSDLPort model
      honorWsdlRequired - If this is true add WSDL Feature only if wsd:Required=true In SEI case, it should be false In Provider case, it should be true
      reportConflicts - If true, checks if the feature setting in WSDL (wsdl extension or policy configuration) conflicts with feature setting in Deployed Service and logs warning if there are any conflicts.
    • setParentFeaturedObject

      public void setParentFeaturedObject(@NotNull WSDLFeaturedObject parent)
      Set the parent features. Basically the parent feature list will be overriden by this feature list.
    • getFeature

      @Nullable public static <F extends jakarta.xml.ws.WebServiceFeature> F getFeature(@NotNull jakarta.xml.ws.WebServiceFeature[] features, @NotNull Class<F> featureType)
    • entrySet

      public Set<Map.Entry<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>> entrySet()
      Specified by:
      entrySet in interface Map<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
      Specified by:
      entrySet in class AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
    • put

      public jakarta.xml.ws.WebServiceFeature put(Class<? extends jakarta.xml.ws.WebServiceFeature> key, jakarta.xml.ws.WebServiceFeature value)
      Specified by:
      put in interface Map<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
      Overrides:
      put in class AbstractMap<Class<? extends jakarta.xml.ws.WebServiceFeature>,jakarta.xml.ws.WebServiceFeature>
    • getSoapVersion

      public static SOAPVersion getSoapVersion(WSFeatureList features)
    • isFeatureEnabled

      public static boolean isFeatureEnabled(Class<? extends jakarta.xml.ws.WebServiceFeature> type, jakarta.xml.ws.WebServiceFeature[] features)
    • toFeatureArray

      public static jakarta.xml.ws.WebServiceFeature[] toFeatureArray(WSBinding binding)