Class JavaServiceDesc

  • All Implemented Interfaces:
    java.io.Serializable, ServiceDesc

    public class JavaServiceDesc
    extends java.lang.Object
    implements ServiceDesc
    A ServiceDesc is an abstract description of a service. ServiceDescs contain OperationDescs, which are descriptions of operations. The information about a service's operations comes from one of two places: 1) deployment, or 2) introspection.
    Author:
    Glen Daniels (gdaniels@apache.org)
    See Also:
    Serialized Form
    • Field Detail

      • log

        protected static org.apache.commons.logging.Log log
    • Constructor Detail

      • JavaServiceDesc

        public JavaServiceDesc()
        Default constructor
    • Method Detail

      • getStyle

        public Style getStyle()
        What kind of service is this?
        Specified by:
        getStyle in interface ServiceDesc
        Returns:
      • getUse

        public Use getUse()
        What kind of use is this?
        Specified by:
        getUse in interface ServiceDesc
        Returns:
      • isWrapped

        public boolean isWrapped()
        Determine whether or not this is a "wrapped" invocation, i.e. whether the outermost XML element of the "main" body element represents a method call, with the immediate children of that element representing arguments to the method.
        Specified by:
        isWrapped in interface ServiceDesc
        Returns:
        true if this is wrapped (i.e. RPC or WRAPPED style), false otherwise
      • getWSDLFile

        public java.lang.String getWSDLFile()
        the wsdl file of the service. When null, it means that the wsdl should be autogenerated
        Specified by:
        getWSDLFile in interface ServiceDesc
        Returns:
        filename or null
      • setWSDLFile

        public void setWSDLFile​(java.lang.String wsdlFileName)
        set the wsdl file of the service; this causes the named file to be returned on a ?wsdl, probe, not introspection generated wsdl.
        Specified by:
        setWSDLFile in interface ServiceDesc
        Parameters:
        wsdlFileName - filename or null to re-enable introspection
      • setAllowedMethods

        public void setAllowedMethods​(java.util.List allowedMethods)
        Specified by:
        setAllowedMethods in interface ServiceDesc
      • getImplClass

        public java.lang.Class getImplClass()
      • setImplClass

        public void setImplClass​(java.lang.Class implClass)
        set the implementation class

        Warning: You cannot call getInitializedServiceDesc() after setting this as it uses this to indicate its work has already been done.

        Parameters:
        implClass -
        Throws:
        java.lang.IllegalArgumentException - if the implementation class is already set
      • getName

        public java.lang.String getName()
        the name of the service
        Specified by:
        getName in interface ServiceDesc
      • setName

        public void setName​(java.lang.String name)
        the name of the service
        Specified by:
        setName in interface ServiceDesc
        Parameters:
        name -
      • getDocumentation

        public java.lang.String getDocumentation()
        get the documentation for the service
        Specified by:
        getDocumentation in interface ServiceDesc
      • setDocumentation

        public void setDocumentation​(java.lang.String documentation)
        set the documentation for the service
        Specified by:
        setDocumentation in interface ServiceDesc
      • getStopClasses

        public java.util.ArrayList getStopClasses()
      • setStopClasses

        public void setStopClasses​(java.util.ArrayList stopClasses)
      • setDisallowedMethods

        public void setDisallowedMethods​(java.util.List disallowedMethods)
        Specified by:
        setDisallowedMethods in interface ServiceDesc
      • getOperations

        public java.util.ArrayList getOperations()
        get all the operations as a list of OperationDescs. this method triggers an evaluation of the valid operations by introspection, so use sparingly
        Specified by:
        getOperations in interface ServiceDesc
        Returns:
        reference to the operations array. This is not a copy
      • getOperationsByName

        public OperationDesc[] getOperationsByName​(java.lang.String methodName)
        get all overloaded operations by name
        Specified by:
        getOperationsByName in interface ServiceDesc
        Parameters:
        methodName -
        Returns:
        null for no match, or an array of OperationDesc objects
      • getOperationByName

        public OperationDesc getOperationByName​(java.lang.String methodName)
        Return an operation matching the given method name. Note that if we have multiple overloads for this method, we will return the first one.
        Specified by:
        getOperationByName in interface ServiceDesc
        Returns:
        null for no match
      • getOperationByElementQName

        public OperationDesc getOperationByElementQName​(QName qname)
        Map an XML QName to an operation. Returns the first one it finds in the case of mulitple matches.
        Specified by:
        getOperationByElementQName in interface ServiceDesc
        Returns:
        null for no match
      • getOperationsByQName

        public OperationDesc[] getOperationsByQName​(QName qname)
        Return all operations which match this QName (i.e. get all the overloads)
        Specified by:
        getOperationsByQName in interface ServiceDesc
        Returns:
        null for no match
      • loadServiceDescByIntrospection

        public void loadServiceDescByIntrospection()
        Fill in a service description by introspecting the implementation class.
      • loadServiceDescByIntrospection

        public void loadServiceDescByIntrospection​(java.lang.Class implClass)
        Fill in a service description by introspecting the implementation class.
      • loadServiceDescByIntrospection

        public void loadServiceDescByIntrospection​(java.lang.Class cls,
                                                   TypeMapping tm)
        Fill in a service description by introspecting the implementation class. This version takes the implementation class and the in-scope TypeMapping.
      • setProperty

        public void setProperty​(java.lang.String name,
                                java.lang.Object value)
        Specified by:
        setProperty in interface ServiceDesc
      • getProperty

        public java.lang.Object getProperty​(java.lang.String name)
        Specified by:
        getProperty in interface ServiceDesc
      • setEndpointURL

        public void setEndpointURL​(java.lang.String endpointURL)
        Specified by:
        setEndpointURL in interface ServiceDesc