Methods Summary |
---|
private void | doStyleConversion()
if (operationName == null && methodDescriptor == null) {
// this is the empty message case
// and we need to expand to all methods
convertedMethodDescs = getAllSEIMethodsOf(ALL_METHODS);
} else if (methodDescriptor != null) {
if (methodDescriptor.getName() != null &&
methodDescriptor.getParameterClassNames() != null) {
// this is the exact case, so no conversion needed
convertedMethodDescs.add(methodDescriptor);
} else if (methodDescriptor.getName() != null &&
methodDescriptor.getParameterClassNames() == null) {
// we need to check for overloading methods
convertedMethodDescs =
getAllSEIMethodsOf(methodDescriptor.getName());
}
}
isConverted = true;
|
public java.util.ArrayList | getAllDefinedMethodsInMessage()Return all methods defined in this message.
In the case of an empty message, it will return all methods
defined in the SEI.
In the case of methods overloading, it will return all methods
defined in the SEI that match with the specified method name.
In the case of DII, i.e the client doesn't have the SEI info,
it will return an empty list for client side defined message.
// only do the conversion if it hasn't done it yet
if (!isConverted) {
doStyleConversion();
}
return convertedMethodDescs;
|
private java.util.ArrayList | getAllSEIMethodsOf(java.lang.String methodName)
String serviceInterfaceName = null;
ArrayList allMethodsInSEI = new ArrayList();
// this is a server side message
if (endPoint != null) {
serviceInterfaceName = endPoint.getServiceEndpointInterface();
// this is a client side message
} else if (portInfo != null) {
serviceInterfaceName = portInfo.getServiceEndpointInterface();
}
// In the case of DII, client doesn't know the SEI name
// return an empty list
if (serviceInterfaceName == null) {
return allMethodsInSEI;
}
ClassLoader classLoader = null;
if (bundleDesc != null) {
classLoader = bundleDesc.getClassLoader();
}
// return an empty list if class loader is not set
if (classLoader == null) {
return allMethodsInSEI;
}
try {
Class c = classLoader.loadClass(serviceInterfaceName);
Method[] methods = c.getMethods();
for (int i = 0; i < methods.length; i++) {
// empty message or message name is *
if (methodName.equals(ALL_METHODS)) {
allMethodsInSEI.add(new MethodDescriptor(methods[i]));
// overloading methods with same method name
} else if (methodName.equals(methods[i].getName())) {
allMethodsInSEI.add(new MethodDescriptor(methods[i]));
}
}
} catch (Exception e) {
e.printStackTrace();
// if there is exception in the class loading
// then we just return the empty list
}
return allMethodsInSEI;
|
public com.sun.enterprise.deployment.BundleDescriptor | getBundleDescriptor()
return bundleDesc;
|
public com.sun.enterprise.deployment.MethodDescriptor | getMethodDescriptor()
return methodDescriptor;
|
public java.lang.String | getOperationName()
return operationName;
|
public com.sun.enterprise.deployment.ServiceRefPortInfo | getServiceRefPortInfo()
return portInfo;
|
public com.sun.enterprise.deployment.WebServiceEndpoint | getWebServiceEndpoint()
return endPoint;
|
public void | setBundleDescriptor(com.sun.enterprise.deployment.BundleDescriptor bundleDesc)
this.bundleDesc = bundleDesc;
|
public void | setMethodDescriptor(com.sun.enterprise.deployment.MethodDescriptor methodDescriptor)
this.methodDescriptor = methodDescriptor;
|
public void | setOperationName(java.lang.String operationName)
this.operationName = operationName;
|
public void | setServiceRefPortInfo(com.sun.enterprise.deployment.ServiceRefPortInfo portInfo)
this.portInfo = portInfo;
|
public void | setWebServiceEndpoint(com.sun.enterprise.deployment.WebServiceEndpoint endPoint)
this.endPoint = endPoint;
|