org.idoox.wasp.tools.holder
Interface HolderGenerator


public interface HolderGenerator

Tool for generating implementations of Holder interface. Because Java does not support methods with output parameters, such parameters must be handled by structures called holders or wrappers. HolderGenerator is a simple tool for the creation of typed holders.

WSO2 SOA Enablement Server fully supports two types of holders. The first type is the JAX-RPC holder. JAX-RPC is becoming a Java�standard for higher-level calling of web services. It contains implementations of holders for all the primitive types and other frequently used data types, like String and QName. The second holder a user can create is custom-made. A custom holder must implement the appropriate interfaces from the WSO2 SOA Enablement Server public API. These interfaces are held in the types package:


A type that implements one of the Holder interfaces, or is recognized to be a JAX-RPC holder, gets special support by WSO2 SOA Enablement Server. Such a parameter is generated as input/output into the appropriate operation in WSDL. Finally, when invoking a service, corresponding serializers and deserializers can be directly chosen for two-way value passing.

Since:
4.0
Component:
Core-Tools

Method Summary
 java.lang.String generateHolder(java.lang.String valueType)
          Generates new holder for given type.
 java.lang.String getJAXRPCHolder(java.lang.String valueType)
          Returns name of JAX-RPC holder if type is supported by JAX-RPC.
 void setClassName(java.lang.String className)
          Sets fully qualified name of target class to generate.
 void setCompilerIO(CompilerIO compilerIO)
          Sets the compilerIO for writing output files.
 void setHolderType(int holderType)
          Sets type of holder.
 

Method Detail

setCompilerIO

public void setCompilerIO(CompilerIO compilerIO)
Sets the compilerIO for writing output files.

Parameters:
compilerIO - compiler I/O helper

setClassName

public void setClassName(java.lang.String className)
Sets fully qualified name of target class to generate.

Parameters:
className - fully qualified name of target class to generate

setHolderType

public void setHolderType(int holderType)
Sets type of holder. Can be ither inout or out. Default is inout.

Parameters:
holderType - type of holder

getJAXRPCHolder

public java.lang.String getJAXRPCHolder(java.lang.String valueType)
Returns name of JAX-RPC holder if type is supported by JAX-RPC.

Parameters:
valueType - type which has to be held

generateHolder

public java.lang.String generateHolder(java.lang.String valueType)
Generates new holder for given type.

Parameters:
valueType - type which has to be held by holder