org.jboss.shrinkwrap.descriptor.impl.ejbjar31
Class MethodTypeImpl<T>

java.lang.Object
  extended by org.jboss.shrinkwrap.descriptor.impl.ejbjar31.MethodTypeImpl<T>
All Implemented Interfaces:
org.jboss.shrinkwrap.descriptor.api.Child<T>, MethodType<T>

public class MethodTypeImpl<T>
extends java.lang.Object
implements org.jboss.shrinkwrap.descriptor.api.Child<T>, MethodType<T>

This class implements the methodType xsd type

Original Documentation:


[
The methodType is used to denote a method of an enterprise
bean's business, home, component, and/or web service endpoint
interface, or, in the case of a message-driven bean, the
bean's message listener method, or a set of such
methods. The ejb-name element must be the name of one of the
enterprise beans declared in the deployment descriptor; the
optional method-intf element allows to distinguish between a
method with the same signature that is multiply defined
across the business, home, component, and/or web service
endpoint nterfaces; the method-name element specifies the
method name; and the optional method-params elements identify
a single method among multiple methods with an overloaded
method name.

There are three possible styles of using methodType element
within a method element:

1.

EJBNAME
*


This style is used to refer to all the methods of the
specified enterprise bean's business, home, component,
and/or web service endpoint interfaces.

2.

EJBNAME
METHOD


This style is used to refer to the specified method of
the specified enterprise bean. If there are multiple
methods with the same overloaded name, the element of
this style refers to all the methods with the overloaded
name.

3.

EJBNAME
METHOD

PARAM-1
PARAM-2
...
PARAM-n



This style is used to refer to a single method within a
set of methods with an overloaded name. PARAM-1 through
PARAM-n are the fully-qualified Java types of the
method's input parameters (if the method has no input
arguments, the method-params element contains no
method-param elements). Arrays are specified by the
array element's type, followed by one or more pair of
square brackets (e.g. int[][]). If there are multiple
methods with the same overloaded name, this style refers
to all of the overloaded methods.

Examples:

Style 1: The following method element refers to all the
methods of the EmployeeService bean's business, home,
component, and/or web service endpoint interfaces:


EmployeeService
*


Style 2: The following method element refers to all the
create methods of the EmployeeService bean's home
interface(s).


EmployeeService
create


Style 3: The following method element refers to the
create(String firstName, String LastName) method of the
EmployeeService bean's home interface(s).


EmployeeService
create

java.lang.String
java.lang.String



The following example illustrates a Style 3 element with
more complex parameter types. The method
foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
mypackage.MyClass[][] myclaar) would be specified as:


EmployeeService
foobar

char
int
int[]
mypackage.MyClass
mypackage.MyClass[][]



The optional method-intf element can be used when it becomes
necessary to differentiate between a method that is multiply
defined across the enterprise bean's business, home, component,
and/or web service endpoint interfaces with the same name and
signature. However, if the same method is a method of both the
local business interface, and the local component interface,
the same attribute applies to the method for both interfaces.
Likewise, if the same method is a method of both the remote
business interface and the remote component interface, the same
attribute applies to the method for both interfaces.

For example, the method element


EmployeeService
Remote
create

java.lang.String
java.lang.String



can be used to differentiate the create(String, String)
method defined in the remote interface from the
create(String, String) method defined in the remote home
interface, which would be defined as


EmployeeService
Home
create

java.lang.String
java.lang.String



and the create method that is defined in the local home
interface which would be defined as


EmployeeService
LocalHome
create

java.lang.String
java.lang.String



The method-intf element can be used with all three Styles
of the method element usage. For example, the following
method element example could be used to refer to all the
methods of the EmployeeService bean's remote home interface
and the remote business interface.


EmployeeService
Home
*




Since:
Generation date :2011-07-19T22:55:02.759+02:00
Author:
Ralf Battenfeld

Constructor Summary
MethodTypeImpl(T t, java.lang.String nodeName, org.jboss.shrinkwrap.descriptor.spi.Node node)
           
MethodTypeImpl(T t, java.lang.String nodeName, org.jboss.shrinkwrap.descriptor.spi.Node node, org.jboss.shrinkwrap.descriptor.spi.Node childNode)
           
 
Method Summary
 java.util.List<java.lang.String> getDescriptionList()
          Returns all description elements
 java.lang.String getEjbName()
          Returns the ejb-name element
 MethodIntfType getMethodIntf()
          Returns the method-intf element
 java.lang.String getMethodIntfAsString()
          Returns the method-intf element
 java.lang.String getMethodName()
          Returns the method-name element
 MethodParamsType<MethodType<T>> methodParams()
          If not already created, a new method-params element will be created and returned.
 MethodType<T> removeAllDescription()
          Removes the description element
 MethodType<T> removeEjbName()
          Removes the ejb-name element
 MethodType<T> removeMethodName()
          Removes the method-name element
 MethodType<T> removeMethodParams()
          Removes the method-params element
 MethodType<T> setDescription(java.lang.String description)
          Creates a new description element
 MethodType<T> setDescriptionList(java.lang.String... values)
          Creates for all String objects representing description elements, a new description element
 MethodType<T> setEjbName(java.lang.String ejbName)
          If not already created, a new ejb-name element with the given value will be created.
 MethodType<T> setMethodIntf(MethodIntfType methodIntf)
          If not already created, a new method-intf element with the given value will be created.
 MethodType<T> setMethodIntf(java.lang.String methodIntf)
          If not already created, a new method-intf element with the given value will be created.
 MethodType<T> setMethodName(java.lang.String methodName)
          If not already created, a new method-name element with the given value will be created.
 T up()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MethodTypeImpl

public MethodTypeImpl(T t,
                      java.lang.String nodeName,
                      org.jboss.shrinkwrap.descriptor.spi.Node node)

MethodTypeImpl

public MethodTypeImpl(T t,
                      java.lang.String nodeName,
                      org.jboss.shrinkwrap.descriptor.spi.Node node,
                      org.jboss.shrinkwrap.descriptor.spi.Node childNode)
Method Detail

up

public T up()
Specified by:
up in interface org.jboss.shrinkwrap.descriptor.api.Child<T>

setDescription

public MethodType<T> setDescription(java.lang.String description)
Creates a new description element

Specified by:
setDescription in interface MethodType<T>
Returns:
the current instance of MethodType

setDescriptionList

public MethodType<T> setDescriptionList(java.lang.String... values)
Creates for all String objects representing description elements, a new description element

Specified by:
setDescriptionList in interface MethodType<T>
Parameters:
list - of description objects
Returns:
the current instance of MethodType

removeAllDescription

public MethodType<T> removeAllDescription()
Removes the description element

Specified by:
removeAllDescription in interface MethodType<T>
Returns:
the current instance of MethodType

getDescriptionList

public java.util.List<java.lang.String> getDescriptionList()
Returns all description elements

Specified by:
getDescriptionList in interface MethodType<T>
Returns:
list of description

setEjbName

public MethodType<T> setEjbName(java.lang.String ejbName)
If not already created, a new ejb-name element with the given value will be created. Otherwise, the existing ejb-name element will be updated with the given value.

Specified by:
setEjbName in interface MethodType<T>
Returns:
the current instance of MethodType

removeEjbName

public MethodType<T> removeEjbName()
Removes the ejb-name element

Specified by:
removeEjbName in interface MethodType<T>
Returns:
the current instance of MethodType

getEjbName

public java.lang.String getEjbName()
Returns the ejb-name element

Specified by:
getEjbName in interface MethodType<T>
Returns:
the node defined for the element ejb-name

setMethodIntf

public MethodType<T> setMethodIntf(MethodIntfType methodIntf)
If not already created, a new method-intf element with the given value will be created. Otherwise, the existing method-intf element will be updated with the given value.

Specified by:
setMethodIntf in interface MethodType<T>
Returns:
the current instance of MethodType

setMethodIntf

public MethodType<T> setMethodIntf(java.lang.String methodIntf)
If not already created, a new method-intf element with the given value will be created. Otherwise, the existing method-intf element will be updated with the given value.

Specified by:
setMethodIntf in interface MethodType<T>
Returns:
the current instance of MethodType

getMethodIntf

public MethodIntfType getMethodIntf()
Returns the method-intf element

Specified by:
getMethodIntf in interface MethodType<T>
Returns:
the node defined for the element method-intf

getMethodIntfAsString

public java.lang.String getMethodIntfAsString()
Returns the method-intf element

Specified by:
getMethodIntfAsString in interface MethodType<T>
Returns:
the node defined for the element method-intf

setMethodName

public MethodType<T> setMethodName(java.lang.String methodName)
If not already created, a new method-name element with the given value will be created. Otherwise, the existing method-name element will be updated with the given value.

Specified by:
setMethodName in interface MethodType<T>
Returns:
the current instance of MethodType

removeMethodName

public MethodType<T> removeMethodName()
Removes the method-name element

Specified by:
removeMethodName in interface MethodType<T>
Returns:
the current instance of MethodType

getMethodName

public java.lang.String getMethodName()
Returns the method-name element

Specified by:
getMethodName in interface MethodType<T>
Returns:
the node defined for the element method-name

removeMethodParams

public MethodType<T> removeMethodParams()
Removes the method-params element

Specified by:
removeMethodParams in interface MethodType<T>
Returns:
the current instance of MethodType

methodParams

public MethodParamsType<MethodType<T>> methodParams()
If not already created, a new method-params element will be created and returned. Otherwise, the existing method-params element will be returned.

Specified by:
methodParams in interface MethodType<T>
Returns:
the node defined for the element method-params