com.sun.xml.ws.policy.jaxws
Class PolicyConfigParser

java.lang.Object
  extended by com.sun.xml.ws.policy.jaxws.PolicyConfigParser

public final class PolicyConfigParser
extends java.lang.Object

Reads a policy configuration file and returns the WSDL model generated from it.


Method Summary
static com.sun.xml.ws.policy.PolicyMap extractPolicyMap(com.sun.xml.ws.api.model.wsdl.WSDLModel model)
          Utility method that tries to retrieve a PolicyMap object from a given WSDLModel.
static com.sun.xml.ws.policy.PolicyMap parse(java.lang.String configFileIdentifier, com.sun.xml.ws.api.server.Container container, com.sun.xml.ws.policy.PolicyMapMutator... mutators)
          This is a helper method that returns directly PolicyMap instance populated from information in WSIT config file.
static com.sun.xml.ws.policy.PolicyMap parse(java.net.URL configFileUrl, boolean isClient, com.sun.xml.ws.policy.PolicyMapMutator... mutators)
          This is a helper method that returns directly PolicyMap instance populated from information in WSIT config file.
static com.sun.xml.ws.api.model.wsdl.WSDLModel parseModel(java.lang.String configFileIdentifier, com.sun.xml.ws.api.server.Container container, com.sun.xml.ws.policy.PolicyMapMutator... mutators)
          The function uses configFileIdentifier parameter to construct a WSIT config file name according to following pattern:

wsit-[configFileIdentifier].xml

After constructing the WSIT config file name, the function tries to find the WSIT config file and read it from the following locations: WEB-INF - for servlet-based web service implementations META-INF - for EJB-based web service implementations classpath - for web service clients If the file is found it is parsed and resulting WSDLModel object containig the populated PolicyMap instance is returned.

static com.sun.xml.ws.api.model.wsdl.WSDLModel parseModel(java.net.URL configFileUrl, boolean isClient, com.sun.xml.ws.policy.PolicyMapMutator... mutators)
          Reads the WSIT config from a file denoted by configFileUrl parameter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

parse

public static com.sun.xml.ws.policy.PolicyMap parse(java.lang.String configFileIdentifier,
                                                    com.sun.xml.ws.api.server.Container container,
                                                    com.sun.xml.ws.policy.PolicyMapMutator... mutators)
                                             throws com.sun.xml.ws.policy.PolicyException
This is a helper method that returns directly PolicyMap instance populated from information in WSIT config file. For more details on the whole process see parseModel method.

Parameters:
configFileIdentifier - base of WSIT config file name (web service name for WSIT service config file or "client" for WSIT client configuration). Must not be null.
container - if the application is run inside a web container, the container instance should be passed into this function, in order to get access to the servlet context that is used to load config file stored in WEB-INF directory of the application. May be null.
mutators - to be registered with the populated PolicyMap object. May be ommited if user does not plan to modify the PolicyMap instance.
Returns:
A WSDLModel with a PolicyMap object populated with information read from the WSIT config file.
Throws:
com.sun.xml.ws.policy.PolicyException - in case of any problems that may occur while reading WSIT config file and constructing the WSDLModel object or populating PolicyMap instance.

parse

public static com.sun.xml.ws.policy.PolicyMap parse(java.net.URL configFileUrl,
                                                    boolean isClient,
                                                    com.sun.xml.ws.policy.PolicyMapMutator... mutators)
                                             throws com.sun.xml.ws.policy.PolicyException,
                                                    java.lang.IllegalArgumentException
This is a helper method that returns directly PolicyMap instance populated from information in WSIT config file. For more details on the whole process see parseModel method.

Parameters:
configFileUrl - URL of the config file resource that should be parsed. Must not be null.
isClient - must be true if this method is invoked to parse client configuration, false otherwise
mutators - to be registered with the populated PolicyMap object. May be ommited if user does not plan to modify the PolicyMap instance.
Returns:
A WSDLModel with a PolicyMap object populated with information read from the WSIT config file.
Throws:
com.sun.xml.ws.policy.PolicyException - in case of any problems that may occur while reading WSIT config file and constructing the WSDLModel object or populating PolicyMap instance.
java.lang.IllegalArgumentException - in case configFileUrl parameter is null.

extractPolicyMap

public static com.sun.xml.ws.policy.PolicyMap extractPolicyMap(com.sun.xml.ws.api.model.wsdl.WSDLModel model)
Utility method that tries to retrieve a PolicyMap object from a given WSDLModel. When succesfull, PolicyMap instance is returned, otherwise result is null.

Parameters:
model - A WSDLModel (possibly) with a PolicyMap object populated with information read from the WSIT config file. May be null; in that case, null is returned as a result of this function call.
Returns:
PolicyMap instance retrieved from a given WSDLModel if successful, null otherwise.

parseModel

public static com.sun.xml.ws.api.model.wsdl.WSDLModel parseModel(java.lang.String configFileIdentifier,
                                                                 com.sun.xml.ws.api.server.Container container,
                                                                 com.sun.xml.ws.policy.PolicyMapMutator... mutators)
                                                          throws com.sun.xml.ws.policy.PolicyException
The function uses configFileIdentifier parameter to construct a WSIT config file name according to following pattern:

wsit-[configFileIdentifier].xml

After constructing the WSIT config file name, the function tries to find the WSIT config file and read it from the following locations:

If the file is found it is parsed and resulting WSDLModel object containig the populated PolicyMap instance is returned. If config file is not found, warning message is logged and null is returned as a result of this function call. In case of any other problems that may occur while reading the WSIT config file, a PolicyException is thrown.

Since PolicyMap object is immutable as such, this function gives you also a chance to register your own PolicyMapMutator objects so that you are able to modify the PolicyMap object later if needed.

Parameters:
configFileIdentifier - base of WSIT config file name (web service name for WSIT service config file or "client" for WSIT client configuration). Must not be null.
container - if the application is run inside a web container, the container instance should be passed into this function, in order to get access to the servlet context that is used to load config file stored in WEB-INF directory of the application. May be null.
mutators - to be registered with the populated PolicyMap object. May be ommited if user does not plan to modify the PolicyMap instance.
Returns:
A WSDLModel with a PolicyMap object populated with information read from the WSIT config file.
Throws:
com.sun.xml.ws.policy.PolicyException - in case of any problems that may occur while reading WSIT config file and constructing the WSDLModel object or populating PolicyMap instance.

parseModel

public static com.sun.xml.ws.api.model.wsdl.WSDLModel parseModel(java.net.URL configFileUrl,
                                                                 boolean isClient,
                                                                 com.sun.xml.ws.policy.PolicyMapMutator... mutators)
                                                          throws com.sun.xml.ws.policy.PolicyException,
                                                                 java.lang.IllegalArgumentException
Reads the WSIT config from a file denoted by configFileUrl parameter. If the file exists it is parsed and resulting WSDLModel object containig the populated PolicyMap instance is returned. If config file for given URL does not exist or in case of any other problems that may occur while reading the WSIT config file, a PolicyException is thrown.

Parameters:
configFileUrl - URL of the config file resource that should be parsed. Must not be null.
isClient - must be true if this method is invoked to parse client configuration, false otherwise
mutators - to be registered with the populated PolicyMap object. May be ommited if user does not plan to modify the PolicyMap instance.
Returns:
A WSDLModel with a PolicyMap object populated with information read from the WSIT config file.
Throws:
com.sun.xml.ws.policy.PolicyException - in case of any problems that may occur while reading WSIT config file and constructing the WSDLModel object or populating PolicyMap instance.
java.lang.IllegalArgumentException - in case configFileUrl parameter is null.