Interface OperationDescription


  • public interface OperationDescription
    An OperationDescripton corresponds to a method on an SEI. That SEI could be explicit (i.e. WebService.endpointInterface=sei.class) or implicit (i.e. public methods on the service implementation are the contract and thus the implicit SEI). Note that while OperationDescriptions are created on both the client and service side, implicit SEIs will only occur on the service side.

    OperationDescriptons contain information that is only relevent for and SEI-based service, i.e. one that is invoked via specific methods. This class does not exist for Provider-based services (i.e. those that specify WebServiceProvider)

     OperationDescription details
     

    CORRESPONDS TO: A single operation on an SEI (on both Client and Server)

    AXIS2 DELEGATE: AxisOperation

    CHILDREN: 0..n ParameterDescription 0..n FaultDescription (Note: Not fully implemented)

    ANNOTATIONS: WebMethod [181] SOAPBinding [181] Oneway [181] WebResult [181] RequestWrapper [224] ResponseWrapper [224]

    WSDL ELEMENTS: operation

    • Field Detail

      • HEADER_PARAMETER_QNAMES

        static final String HEADER_PARAMETER_QNAMES
        Paramater set on AxisOperation which contains an ArrayList of SOAP header QNames corresponding to SEI parameters.
        See Also:
        Constant Field Values
    • Method Detail

      • isListType

        boolean isListType()
      • getJavaMethodName

        String getJavaMethodName()
      • getJavaDeclaringClassName

        String getJavaDeclaringClassName()
      • getJavaParameters

        String[] getJavaParameters()
      • getSEIMethod

        Method getSEIMethod()
        Client side and non-DBC service side only! Return the SEI method for which a service.getPort(Class SEIClass) created the EndpointDescriptionInterface and the associated OperationDescriptions. Returns null on the service implementation side.
        Returns:
      • getMethodFromServiceImpl

        Method getMethodFromServiceImpl​(Class serviceImpl)
        Service implementation side only! Given a service implementation class, find the method on that class that corresponds to this operation description. This is necessary because on the service impl side, the OperationDescriptions can be built using byte-scanning and without the class actually having been loaded.
        Parameters:
        serviceImpl -
        Returns:
      • isJAXWSAsyncClientMethod

        boolean isJAXWSAsyncClientMethod()
        Answer if this operation corresponds to the JAX-WS Client-only async methods. These methods are of the form: javax.xml.ws.Response method(...) java.util.concurrent.Future method(..., javax.xml.ws.AsyncHandler)
        Returns:
      • getName

        QName getName()
      • getOperationName

        String getOperationName()
      • getAction

        String getAction()
      • isOneWay

        boolean isOneWay()
      • isExcluded

        boolean isExcluded()
      • isOperationReturningResult

        boolean isOperationReturningResult()
      • getResultName

        String getResultName()
      • getResultTargetNamespace

        String getResultTargetNamespace()
      • getResultPartName

        String getResultPartName()
      • isResultHeader

        boolean isResultHeader()
      • getResultType

        Class getResultType()
        Return the Class of the return type. For JAX-WS async returns of type Response or AsyncHandler, the class associated with Response or AsyncHanler respectively is returned. To get the class associated with
        Returns:
        Class
        See Also:
        getResultActualType()
      • getResultActualType

        Class getResultActualType()
        Return the actual Class of the type. For a JAX-WS async return type of Response or AsyncHandler, the class associated with is returned. For non-JAX-WS async returns, the class associated with the return type is returned. Note that for a Generic return type, such as List, the class associated with List will be returned.
        Returns:
        actual Class
      • getRequestWrapperClassName

        String getRequestWrapperClassName()
        Returns:
        the class name of the wrapper class. NOTE: This method will return null if the request wrapper class is not known during the description layer processing. In such cases the implementation may use proprietary code to find the class. For example, JAXWS may look for a matching class in the sei package, in a special jaxws package or proceed without the class name
      • getRequestWrapperTargetNamespace

        String getRequestWrapperTargetNamespace()
      • getRequestWrapperLocalName

        String getRequestWrapperLocalName()
      • getRequestWrapperPartName

        String getRequestWrapperPartName()
      • getResponseWrapperClassName

        String getResponseWrapperClassName()
        Returns:
        the class name of the wrapper class. NOTE: This method will return null if the request wrapper class is not known during the description layer processing. In such cases the implementation may use proprietary code to find the class. For example, JAXWS may look for a matching class in the sei package, in a special jaxws package or proceed without the class name
      • getResponseWrapperTargetNamespace

        String getResponseWrapperTargetNamespace()
      • getResponseWrapperLocalName

        String getResponseWrapperLocalName()
      • getResponseWrapperPartName

        String getResponseWrapperPartName()
      • getParamNames

        String[] getParamNames()
      • getSyncOperation

        OperationDescription getSyncOperation()
        For JAX-WS client-side async operations, this will return the corresponding sync OperationDescription. Note that if this method is used within the metadata layer, it is possible that it will return null. That will happen if the metadata layer is constructed from annotations on the SEI (not WSDL). In that case, it is possible that the async methods on the SEI are processed before the sync method. In that case, there will be no sync method yet. If this method is called outside the metadata layer, then if the async methods exist, the sync method should also exist.
        Returns:
        OperationDescription corresponding to the sync operation, or null (see note above).
      • getResultAttachmentDescription

        AttachmentDescription getResultAttachmentDescription()
        Returns:
        Attachment Description for the return type or null
      • getBindingInputNamespace

        String getBindingInputNamespace()
        Returns the namespace of binding input message for the operation
      • getBindingOutputNamespace

        String getBindingOutputNamespace()
        Returns the namespace of binding output message for the operation
      • hasRequestSwaRefAttachments

        boolean hasRequestSwaRefAttachments()
        Returns:
        a boolean indicator of nested swaRef attachments on the request.
      • setHasRequestSwaRefAttachments

        void setHasRequestSwaRefAttachments​(boolean b)
        Parameters:
        sets - the indicator of nested request swaRef attachments.
      • hasResponseSwaRefAttachments

        boolean hasResponseSwaRefAttachments()
        Returns:
        a boolean indicator of nested swaRef attachments on the response.
      • setHasResponseSwaRefAttachments

        void setHasResponseSwaRefAttachments​(boolean b)
        Parameters:
        sets - the indicator of nested response swaRef attachments.