Package org.apache.axis.description
Class JavaServiceDesc
- java.lang.Object
-
- org.apache.axis.description.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 Summary
Fields Modifier and Type Field Description protected static org.apache.commons.logging.Log
log
-
Constructor Summary
Constructors Constructor Description JavaServiceDesc()
Default constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addOperationDesc(OperationDesc operation)
java.util.List
getAllowedMethods()
java.lang.String
getDefaultNamespace()
java.util.List
getDisallowedMethods()
java.lang.String
getDocumentation()
get the documentation for the servicejava.lang.String
getEndpointURL()
java.lang.Class
getImplClass()
java.lang.String
getName()
the name of the serviceOperationDesc
getOperationByElementQName(QName qname)
Map an XML QName to an operation.OperationDesc
getOperationByName(java.lang.String methodName)
Return an operation matching the given method name.java.util.ArrayList
getOperations()
get all the operations as a list of OperationDescs.OperationDesc[]
getOperationsByName(java.lang.String methodName)
get all overloaded operations by nameOperationDesc[]
getOperationsByQName(QName qname)
Return all operations which match this QName (i.e.java.lang.Object
getProperty(java.lang.String name)
java.util.ArrayList
getStopClasses()
Style
getStyle()
What kind of service is this?TypeMapping
getTypeMapping()
TypeMappingRegistry
getTypeMappingRegistry()
Use
getUse()
What kind of use is this?java.lang.String
getWSDLFile()
the wsdl file of the service.boolean
isInitialized()
boolean
isWrapped()
Determine whether or not this is a "wrapped" invocation, i.e.void
loadServiceDescByIntrospection()
Fill in a service description by introspecting the implementation class.void
loadServiceDescByIntrospection(java.lang.Class implClass)
Fill in a service description by introspecting the implementation class.void
loadServiceDescByIntrospection(java.lang.Class cls, TypeMapping tm)
Fill in a service description by introspecting the implementation class.void
removeOperationDesc(OperationDesc operation)
void
setAllowedMethods(java.util.List allowedMethods)
void
setDefaultNamespace(java.lang.String namespace)
void
setDisallowedMethods(java.util.List disallowedMethods)
void
setDocumentation(java.lang.String documentation)
set the documentation for the servicevoid
setEndpointURL(java.lang.String endpointURL)
void
setImplClass(java.lang.Class implClass)
set the implementation classvoid
setName(java.lang.String name)
the name of the servicevoid
setNamespaceMappings(java.util.List namespaces)
void
setProperty(java.lang.String name, java.lang.Object value)
void
setStopClasses(java.util.ArrayList stopClasses)
void
setStyle(Style style)
void
setTypeMapping(TypeMapping tm)
void
setTypeMappingRegistry(TypeMappingRegistry tmr)
void
setUse(Use use)
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.
-
-
-
Method Detail
-
getStyle
public Style getStyle()
What kind of service is this?- Specified by:
getStyle
in interfaceServiceDesc
- Returns:
-
setStyle
public void setStyle(Style style)
- Specified by:
setStyle
in interfaceServiceDesc
-
getUse
public Use getUse()
What kind of use is this?- Specified by:
getUse
in interfaceServiceDesc
- Returns:
-
setUse
public void setUse(Use use)
- Specified by:
setUse
in interfaceServiceDesc
-
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 interfaceServiceDesc
- 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 interfaceServiceDesc
- 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 interfaceServiceDesc
- Parameters:
wsdlFileName
- filename or null to re-enable introspection
-
getAllowedMethods
public java.util.List getAllowedMethods()
- Specified by:
getAllowedMethods
in interfaceServiceDesc
-
setAllowedMethods
public void setAllowedMethods(java.util.List allowedMethods)
- Specified by:
setAllowedMethods
in interfaceServiceDesc
-
getImplClass
public java.lang.Class getImplClass()
-
setImplClass
public void setImplClass(java.lang.Class implClass)
set the implementation classWarning: 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
-
getTypeMapping
public TypeMapping getTypeMapping()
- Specified by:
getTypeMapping
in interfaceServiceDesc
-
setTypeMapping
public void setTypeMapping(TypeMapping tm)
- Specified by:
setTypeMapping
in interfaceServiceDesc
-
getName
public java.lang.String getName()
the name of the service- Specified by:
getName
in interfaceServiceDesc
-
setName
public void setName(java.lang.String name)
the name of the service- Specified by:
setName
in interfaceServiceDesc
- Parameters:
name
-
-
getDocumentation
public java.lang.String getDocumentation()
get the documentation for the service- Specified by:
getDocumentation
in interfaceServiceDesc
-
setDocumentation
public void setDocumentation(java.lang.String documentation)
set the documentation for the service- Specified by:
setDocumentation
in interfaceServiceDesc
-
getStopClasses
public java.util.ArrayList getStopClasses()
-
setStopClasses
public void setStopClasses(java.util.ArrayList stopClasses)
-
getDisallowedMethods
public java.util.List getDisallowedMethods()
- Specified by:
getDisallowedMethods
in interfaceServiceDesc
-
setDisallowedMethods
public void setDisallowedMethods(java.util.List disallowedMethods)
- Specified by:
setDisallowedMethods
in interfaceServiceDesc
-
removeOperationDesc
public void removeOperationDesc(OperationDesc operation)
- Specified by:
removeOperationDesc
in interfaceServiceDesc
-
addOperationDesc
public void addOperationDesc(OperationDesc operation)
- Specified by:
addOperationDesc
in interfaceServiceDesc
-
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 interfaceServiceDesc
- 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 interfaceServiceDesc
- 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 interfaceServiceDesc
- 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 interfaceServiceDesc
- 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 interfaceServiceDesc
- 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.
-
setNamespaceMappings
public void setNamespaceMappings(java.util.List namespaces)
- Specified by:
setNamespaceMappings
in interfaceServiceDesc
-
getDefaultNamespace
public java.lang.String getDefaultNamespace()
- Specified by:
getDefaultNamespace
in interfaceServiceDesc
-
setDefaultNamespace
public void setDefaultNamespace(java.lang.String namespace)
- Specified by:
setDefaultNamespace
in interfaceServiceDesc
-
setProperty
public void setProperty(java.lang.String name, java.lang.Object value)
- Specified by:
setProperty
in interfaceServiceDesc
-
getProperty
public java.lang.Object getProperty(java.lang.String name)
- Specified by:
getProperty
in interfaceServiceDesc
-
getEndpointURL
public java.lang.String getEndpointURL()
- Specified by:
getEndpointURL
in interfaceServiceDesc
-
setEndpointURL
public void setEndpointURL(java.lang.String endpointURL)
- Specified by:
setEndpointURL
in interfaceServiceDesc
-
getTypeMappingRegistry
public TypeMappingRegistry getTypeMappingRegistry()
- Specified by:
getTypeMappingRegistry
in interfaceServiceDesc
-
setTypeMappingRegistry
public void setTypeMappingRegistry(TypeMappingRegistry tmr)
- Specified by:
setTypeMappingRegistry
in interfaceServiceDesc
-
isInitialized
public boolean isInitialized()
- Specified by:
isInitialized
in interfaceServiceDesc
-
-