Package com.sun.xml.ws.model.wsdl
Class WSDLServiceImpl
- java.lang.Object
-
- com.sun.xml.ws.model.wsdl.WSDLServiceImpl
-
- All Implemented Interfaces:
EditableWSDLService,WSDLExtensible,WSDLObject,WSDLService
public final class WSDLServiceImpl extends Object implements EditableWSDLService
Implementation ofWSDLService- Author:
- Vivek Pandey
-
-
Field Summary
Fields Modifier and Type Field Description protected Set<WSDLExtension>extensionsprotected List<com.sun.xml.ws.model.wsdl.AbstractExtensibleImpl.UnknownWSDLExtension>notUnderstoodExtensions
-
Constructor Summary
Constructors Constructor Description WSDLServiceImpl(XMLStreamReader xsr, EditableWSDLModel parent, QName name)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExtension(WSDLExtension ex)Adds a newWSDLExtensionto this object.voidaddNotUnderstoodExtension(QName extnEl, Locator locator)This can be used if a WSDL extension element that has wsdl:required=true is not understoodbooleanareRequiredExtensionsUnderstood()This method should be called after freezing the WSDLModelvoidfreeze(EditableWSDLModel root)Freezes WSDL model to prevent further modificationEditableWSDLPortget(QName portName)Gets theWSDLPortfor a given port name<T extends WSDLExtension>
TgetExtension(Class<T> type)Gets the extension that is assignable to the given type.Iterable<WSDLExtension>getExtensions()Gets all theWSDLExtensions added throughWSDLExtensible.addExtension(WSDLExtension).<T extends WSDLExtension>
Iterable<T>getExtensions(Class<T> type)Gets all the extensions that is assignable to the given type.EditableWSDLPortgetFirstPort()Gets the firstWSDLPortif any, or otherwise null.LocatorgetLocation()Gets the source location information in the parsed WSDL.EditableWSDLPortgetMatchingPort(QName portTypeName)gets the first port in this service which matches the portTypeQNamegetName()Gets the name of the wsdl:service@name attribute value as local name and wsdl:definitions@targetNamespace as the namespace uri.List<? extends com.sun.xml.ws.model.wsdl.AbstractExtensibleImpl.UnknownWSDLExtension>getNotUnderstoodExtensions()Lists extensions marked as not understoodEditableWSDLModelgetParent()Gets theWSDLModelthat owns this service.Iterable<EditableWSDLPort>getPorts()Gives all theWSDLPortin a wsdl:serviceWSDLServicevoidput(QName portName, EditableWSDLPort port)Populates the Map that holds port name as key andWSDLPortas the value.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.sun.xml.ws.api.model.wsdl.WSDLExtensible
addExtension, addNotUnderstoodExtension, areRequiredExtensionsUnderstood, getExtension, getExtensions, getExtensions, getNotUnderstoodExtensions
-
Methods inherited from interface com.sun.xml.ws.api.model.wsdl.WSDLObject
getLocation
-
-
-
-
Field Detail
-
extensions
protected final Set<WSDLExtension> extensions
-
notUnderstoodExtensions
protected List<com.sun.xml.ws.model.wsdl.AbstractExtensibleImpl.UnknownWSDLExtension> notUnderstoodExtensions
-
-
Constructor Detail
-
WSDLServiceImpl
public WSDLServiceImpl(XMLStreamReader xsr, EditableWSDLModel parent, QName name)
-
-
Method Detail
-
getParent
@NotNull public EditableWSDLModel getParent()
Description copied from interface:WSDLServiceGets theWSDLModelthat owns this service.- Specified by:
getParentin interfaceEditableWSDLService- Specified by:
getParentin interfaceWSDLService
-
getName
public QName getName()
Description copied from interface:WSDLServiceGets the name of the wsdl:service@name attribute value as local name and wsdl:definitions@targetNamespace as the namespace uri.- Specified by:
getNamein interfaceWSDLService
-
get
public EditableWSDLPort get(QName portName)
Description copied from interface:WSDLServiceGets theWSDLPortfor a given port name- Specified by:
getin interfaceEditableWSDLService- Specified by:
getin interfaceWSDLService- Parameters:
portName- non-null operationName- Returns:
- null if a
WSDLPortis not found
-
getFirstPort
public EditableWSDLPort getFirstPort()
Description copied from interface:WSDLServiceGets the firstWSDLPortif any, or otherwise null.- Specified by:
getFirstPortin interfaceEditableWSDLService- Specified by:
getFirstPortin interfaceWSDLService
-
getPorts
public Iterable<EditableWSDLPort> getPorts()
Description copied from interface:WSDLServiceGives all theWSDLPortin a wsdl:serviceWSDLService- Specified by:
getPortsin interfaceEditableWSDLService- Specified by:
getPortsin interfaceWSDLService
-
getMatchingPort
@Nullable public EditableWSDLPort getMatchingPort(QName portTypeName)
gets the first port in this service which matches the portType- Specified by:
getMatchingPortin interfaceEditableWSDLService- Specified by:
getMatchingPortin interfaceWSDLService
-
put
public void put(QName portName, EditableWSDLPort port)
Populates the Map that holds port name as key andWSDLPortas the value.- Specified by:
putin interfaceEditableWSDLService- Parameters:
portName- Must be non-nullport- Must be non-null- Throws:
NullPointerException- if either opName or ptOp is null
-
freeze
public void freeze(EditableWSDLModel root)
Description copied from interface:EditableWSDLServiceFreezes WSDL model to prevent further modification- Specified by:
freezein interfaceEditableWSDLService- Parameters:
root- WSDL Model
-
getExtensions
public final Iterable<WSDLExtension> getExtensions()
Description copied from interface:WSDLExtensibleGets all theWSDLExtensions added throughWSDLExtensible.addExtension(WSDLExtension).- Specified by:
getExtensionsin interfaceWSDLExtensible- Returns:
- never null.
-
getExtensions
public final <T extends WSDLExtension> Iterable<T> getExtensions(Class<T> type)
Description copied from interface:WSDLExtensibleGets all the extensions that is assignable to the given type.This allows clients to find specific extensions in a type-safe and convenient way.
- Specified by:
getExtensionsin interfaceWSDLExtensible- Parameters:
type- The type of the extension to obtain. Must not be null.- Returns:
- Can be an empty fromjava.collection but never null.
-
getExtension
public <T extends WSDLExtension> T getExtension(Class<T> type)
Description copied from interface:WSDLExtensibleGets the extension that is assignable to the given type.This is just a convenient version that does
Iterator itr = getExtensions(type); if(itr.hasNext()) return itr.next(); else return null;
- Specified by:
getExtensionin interfaceWSDLExtensible- Returns:
- null if the extension was not found.
-
addExtension
public void addExtension(WSDLExtension ex)
Description copied from interface:WSDLExtensibleAdds a newWSDLExtensionto this object.- Specified by:
addExtensionin interfaceWSDLExtensible- Parameters:
ex- must not be null.
-
getNotUnderstoodExtensions
public List<? extends com.sun.xml.ws.model.wsdl.AbstractExtensibleImpl.UnknownWSDLExtension> getNotUnderstoodExtensions()
Description copied from interface:WSDLExtensibleLists extensions marked as not understood- Specified by:
getNotUnderstoodExtensionsin interfaceWSDLExtensible- Returns:
- List of not understood extensions
-
addNotUnderstoodExtension
public void addNotUnderstoodExtension(QName extnEl, Locator locator)
This can be used if a WSDL extension element that has wsdl:required=true is not understood- Specified by:
addNotUnderstoodExtensionin interfaceWSDLExtensible- Parameters:
extnEl-locator-
-
areRequiredExtensionsUnderstood
public boolean areRequiredExtensionsUnderstood()
This method should be called after freezing the WSDLModel- Specified by:
areRequiredExtensionsUnderstoodin interfaceWSDLExtensible- Returns:
- true if all wsdl required extensions on Port and Binding are understood
-
getLocation
@NotNull public final Locator getLocation()
Description copied from interface:WSDLObjectGets the source location information in the parsed WSDL. This is useful when producing error messages.- Specified by:
getLocationin interfaceWSDLObject
-
-