Package com.sun.xml.ws.server.sei
Class EndpointArgumentsBuilder
- java.lang.Object
-
- com.sun.xml.ws.server.sei.EndpointArgumentsBuilder
-
- Direct Known Subclasses:
EndpointArgumentsBuilder.AttachmentBuilder,EndpointArgumentsBuilder.Body,EndpointArgumentsBuilder.Composite,EndpointArgumentsBuilder.DocLit,EndpointArgumentsBuilder.Header,EndpointArgumentsBuilder.NullSetter,EndpointArgumentsBuilder.RpcLit
public abstract class EndpointArgumentsBuilder extends Object
Reads a requestMessage, disassembles it, and moves obtained Java values to the expected places.- Author:
- Jitendra Kotamraju
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classEndpointArgumentsBuilder.AttachmentBuilderReads an Attachment into a Java parameter.static classEndpointArgumentsBuilder.BodyReads the whole payload into a single JAXB bean.static classEndpointArgumentsBuilder.CompositeEndpointArgumentsBuilderthat is a composition of multipleEndpointArgumentsBuilders.static classEndpointArgumentsBuilder.DocLitTreats a payload as multiple parts wrapped into one element, and processes all such wrapped parts.static classEndpointArgumentsBuilder.HeaderReads a header into a JAXB object.static classEndpointArgumentsBuilder.NullSetterEndpointArgumentsBuilderthat sets the VM uninitialized value to the type.static classEndpointArgumentsBuilder.RpcLitTreats a payload as multiple parts wrapped into one element, and processes all such wrapped parts.
-
Field Summary
Fields Modifier and Type Field Description static EndpointArgumentsBuilderNONEThe singleton instance that produces null return value.protected Map<QName,com.sun.xml.ws.server.sei.EndpointArgumentsBuilder.WrappedPartBuilder>wrappedPartsprotected QNamewrapperName
-
Constructor Summary
Constructors Constructor Description EndpointArgumentsBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static ObjectgetVMUninitializedValue(Type type)Returns the 'uninitialized' value for the given type.static StringgetWSDLPartName(Attachment att)Gets the WSDL part name of this attachment.abstract voidreadRequest(Message request, Object[] args)Reads a requestMessage, disassembles it, and moves obtained Java values to the expected places.protected voidreadWrappedRequest(Message msg, Object[] args)
-
-
-
Field Detail
-
NONE
public static final EndpointArgumentsBuilder NONE
The singleton instance that produces null return value. Used for operations that doesn't have any output.
-
wrapperName
protected QName wrapperName
-
-
Method Detail
-
readRequest
public abstract void readRequest(Message request, Object[] args) throws javax.xml.bind.JAXBException, XMLStreamException
Reads a requestMessage, disassembles it, and moves obtained Java values to the expected places.- Parameters:
request- The requestMessageto be de-composed.args- The Java arguments given to the SEI method invocation. Some parts of the reply message may be set toHolders in the arguments.- Throws:
javax.xml.bind.JAXBException- if there's an error during unmarshalling the request message.XMLStreamException- if there's an error during unmarshalling the request message.
-
getVMUninitializedValue
public static Object getVMUninitializedValue(Type type)
Returns the 'uninitialized' value for the given type.For primitive types, it's '0', and for reference types, it's null.
-
readWrappedRequest
protected void readWrappedRequest(Message msg, Object[] args) throws javax.xml.bind.JAXBException, XMLStreamException
- Throws:
javax.xml.bind.JAXBExceptionXMLStreamException
-
getWSDLPartName
public static final String getWSDLPartName(Attachment att)
Gets the WSDL part name of this attachment.According to WSI AP 1.0
3.8 Value-space of Content-Id Header Definition: content-id part encoding The "content-id part encoding" consists of the concatenation of: The value of the name attribute of the wsdl:part element referenced by the mime:content, in which characters disallowed in content-id headers (non-ASCII characters as represented by code points above 0x7F) are escaped as follows: o Each disallowed character is converted to UTF-8 as one or more bytes. o Any bytes corresponding to a disallowed character are escaped with the URI escaping mechanism (that is, converted to %HH, where HH is the hexadecimal notation of the byte value). o The original character is replaced by the resulting character sequence. The character '=' (0x3D). A globally unique value such as a UUID. The character '@' (0x40). A valid domain name under the authority of the entity constructing the message.So a wsdl:part fooPart will be encoded as:- Returns:
- null if the parsing fails.
-
-