org.objectweb.jonas_ejb.deployment.api
Class MethodDesc

java.lang.Object
  |
  +--org.objectweb.jonas_ejb.deployment.api.MethodDesc
Direct Known Subclasses:
MethodCmp2Desc, MethodJdbcCmp1Desc

public class MethodDesc
extends java.lang.Object

Class to hold meta-information related to bean and home methods.

Author:
Christophe Ney [cney@batisseurs.com]

Field Summary
protected static java.lang.String[] APPLY_TO
           
static int APPLY_TO_BEAN
           
static int APPLY_TO_BEAN_METHOD
           
static int APPLY_TO_BEAN_METHOD_NAME
           
static int APPLY_TO_CLASS
           
static int APPLY_TO_CLASS_METHOD
           
static int APPLY_TO_CLASS_METHOD_NAME
           
static int APPLY_TO_NOTHING
           
protected  BeanDesc beanDesc
           
static int TX_MANDATORY
           
static int TX_NEVER
           
static int TX_NOT_SET
          Set of constants for method transaction attribute
static int TX_NOT_SUPPORTED
           
static int TX_REQUIRED
           
static int TX_REQUIRES_NEW
           
static int TX_SUPPORTS
           
 
Constructor Summary
MethodDesc(BeanDesc beanDesc, java.lang.reflect.Method meth, int index)
          constructor to be used by parent node
 
Method Summary
 BeanDesc getBeanDesc()
          get the parent node
 int getIndex()
          get a unique index of the method for the bean
 java.lang.reflect.Method getMethod()
          return the method to which the meta-information applies
 java.lang.String[] getRoleName()
          String representation of the roles which can execute the method
 int getTxAttribute()
          Get the container transaction attribute that match the method
 java.lang.String getTxAttributeName()
          String representation of the transactionnal attribute
static java.lang.String getTxAttributeName(int value)
          String representation of the transactionnal attribute
 int getTxAttributeStatus()
          Get the container transaction attribute that match the method
 boolean isFindByPrimaryKey()
          access if the method is findByPrimaryKey
static boolean isFindByPrimaryKey(java.lang.reflect.Method meth)
          access if a method is findByPrimaryKey
 boolean isFinder()
          access if the method is a finder
static boolean isFinder(java.lang.reflect.Method meth)
          access if a method is a finder
 boolean isSelect()
          access if the method is a select
static boolean isSelect(java.lang.reflect.Method meth)
          access if a method is a select
 int matchPattern(java.lang.Class pclass, java.lang.String mName, org.objectweb.jonas_ejb.deployment.xml.MethodParams patternMethodParams)
          Evaluate method pattern maching as defined in the EJB specifications
static int matchPattern(java.lang.reflect.Method meth, java.lang.Class pclass, java.lang.String mName, org.objectweb.jonas_ejb.deployment.xml.MethodParams patternMethodParams)
          Get the status of applicability for a given pattern to a method
static java.lang.String methodElementToString(org.objectweb.jonas_ejb.deployment.xml.Method m)
          String representation of the given element
protected static java.lang.String methodElementToString(org.objectweb.jonas_ejb.deployment.xml.MethodIntf intf, org.objectweb.jonas_ejb.deployment.xml.MethodName name, org.objectweb.jonas_ejb.deployment.xml.MethodParams params)
          get a String representation of a method from it's XML representation
 void setIndex(int idx)
           
 java.lang.String toString()
          String representation of the object for test purpose
static java.lang.String toString(java.lang.reflect.Method m)
          get a String representation of a method from the reflection object
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TX_NOT_SET

public static final int TX_NOT_SET
Set of constants for method transaction attribute

TX_NOT_SUPPORTED

public static final int TX_NOT_SUPPORTED

TX_REQUIRED

public static final int TX_REQUIRED

TX_SUPPORTS

public static final int TX_SUPPORTS

TX_REQUIRES_NEW

public static final int TX_REQUIRES_NEW

TX_MANDATORY

public static final int TX_MANDATORY

TX_NEVER

public static final int TX_NEVER

APPLY_TO_NOTHING

public static final int APPLY_TO_NOTHING

APPLY_TO_BEAN

public static final int APPLY_TO_BEAN

APPLY_TO_CLASS

public static final int APPLY_TO_CLASS

APPLY_TO_BEAN_METHOD_NAME

public static final int APPLY_TO_BEAN_METHOD_NAME

APPLY_TO_CLASS_METHOD_NAME

public static final int APPLY_TO_CLASS_METHOD_NAME

APPLY_TO_BEAN_METHOD

public static final int APPLY_TO_BEAN_METHOD

APPLY_TO_CLASS_METHOD

public static final int APPLY_TO_CLASS_METHOD

APPLY_TO

protected static final java.lang.String[] APPLY_TO

beanDesc

protected BeanDesc beanDesc
Constructor Detail

MethodDesc

public MethodDesc(BeanDesc beanDesc,
                  java.lang.reflect.Method meth,
                  int index)
constructor to be used by parent node
Method Detail

getIndex

public int getIndex()
get a unique index of the method for the bean

setIndex

public void setIndex(int idx)

isFinder

public boolean isFinder()
access if the method is a finder
Returns:
true for finder methods

isFindByPrimaryKey

public boolean isFindByPrimaryKey()
access if the method is findByPrimaryKey
Returns:
true for the findByPrimaryKey method

isSelect

public boolean isSelect()
access if the method is a select
Returns:
true for select methods

matchPattern

public int matchPattern(java.lang.Class pclass,
                        java.lang.String mName,
                        org.objectweb.jonas_ejb.deployment.xml.MethodParams patternMethodParams)
Evaluate method pattern maching as defined in the EJB specifications
Returns:
one of the APPLY_TO_* values.

matchPattern

public static int matchPattern(java.lang.reflect.Method meth,
                               java.lang.Class pclass,
                               java.lang.String mName,
                               org.objectweb.jonas_ejb.deployment.xml.MethodParams patternMethodParams)
Get the status of applicability for a given pattern to a method
Returns:
status of applicability APPLY_TO_NOTHING,APPLY_TO_BEAN,APPLY_TO_CLASS,APPLY_TO_METHOD_NAME,APPLY_TO_METHOD

getTxAttribute

public int getTxAttribute()
Get the container transaction attribute that match the method
Returns:
Constant value within list : TX_NOT_SUPPORTED,TX_REQUIRED,TX_SUPPORTS,TX_REQUIRES_NEW,TX_MANDATORY,TX_NEVER,TX_NOT_SET

getTxAttributeStatus

public int getTxAttributeStatus()
Get the container transaction attribute that match the method
Returns:
Constant value within list : APPLY_TO_NOTHING, APPLY_TO_BEAN, APPLY_TO_CLASS, APPLY_TO_BEAN_METHOD_NAME, APPLY_TO_CLASS_METHOD_NAME, APPLY_TO_BEAN_METHOD, APPLY_TO_CLASS_METHOD

getTxAttributeName

public static java.lang.String getTxAttributeName(int value)
String representation of the transactionnal attribute
Returns:
String representation of this transactionnal attribute

getTxAttributeName

public java.lang.String getTxAttributeName()
String representation of the transactionnal attribute
Returns:
String representation of this transactionnal attribute

getRoleName

public java.lang.String[] getRoleName()
String representation of the roles which can execute the method
Returns:
Array of String representing the roles which can execute the method

methodElementToString

public static java.lang.String methodElementToString(org.objectweb.jonas_ejb.deployment.xml.Method m)
String representation of the given element
Parameters:
m - an element
Returns:
String representation of the given element method

methodElementToString

protected static java.lang.String methodElementToString(org.objectweb.jonas_ejb.deployment.xml.MethodIntf intf,
                                                        org.objectweb.jonas_ejb.deployment.xml.MethodName name,
                                                        org.objectweb.jonas_ejb.deployment.xml.MethodParams params)
get a String representation of a method from it's XML representation

toString

public static java.lang.String toString(java.lang.reflect.Method m)
get a String representation of a method from the reflection object

getMethod

public java.lang.reflect.Method getMethod()
return the method to which the meta-information applies

getBeanDesc

public BeanDesc getBeanDesc()
get the parent node

isFinder

public static boolean isFinder(java.lang.reflect.Method meth)
access if a method is a finder

isFindByPrimaryKey

public static boolean isFindByPrimaryKey(java.lang.reflect.Method meth)
access if a method is findByPrimaryKey

isSelect

public static boolean isSelect(java.lang.reflect.Method meth)
access if a method is a select

toString

public java.lang.String toString()
String representation of the object for test purpose
Overrides:
toString in class java.lang.Object
Returns:
String representation of this object