diff options
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/MethodElement.java')
-rw-r--r-- | plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/MethodElement.java | 369 |
1 files changed, 0 insertions, 369 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/MethodElement.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/MethodElement.java deleted file mode 100644 index 3a6cac6f6..000000000 --- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/MethodElement.java +++ /dev/null @@ -1,369 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2006 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.j2ee.ejb; - -import org.eclipse.emf.common.util.EList; -import org.eclipse.jem.java.JavaClass; -import org.eclipse.jem.java.Method; -import org.eclipse.jst.j2ee.common.J2EEEObject; -/** - * The method element is used to denote a method of an enterprise bean's - * home or remote interface, or a set of methods. The ejb-name element - * must be the name of one of the enterprise beans in declared in the - * deployment descriptor; the optional method-intf element allows to - * distinguish between a method with the same signature that is defined in - * both the home and remote interface; 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 the method element syntax: - * - * 1. <method> - * <ejb-name>EJBNAME<//ejb-name> - * <method-name>*<//method-name> - * <//method> - * - * This style is used to refer to all the methods of the specified - * enterprise bean's home and remote interfaces. - * - * 2. <method> - * <ejb-name>EJBNAME<//ejb-name> - * <method-name>METHOD<//method-name> - * <//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. <method> - * <ejb-name>EJBNAME<//ejb-name> - * <method-name>METHOD<//method-name> - * <method-params> - * <method-param>PARAM-1<//method-param> - * <method-param>PARAM-2<//method-param> - * ... - * <method-param>PARAM-n<//method-param> - * <//method-params> - * <method> - * - * 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[][]). - * - * - * Used in: method-permission and container-transaction - * - * Examples: - * - * Style 1: The following method element refers to all the methods of - * the EmployeeService bean's home and remote interfaces: - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-name>*<//method-name> - * <//method> - * - * Style 2: The following method element refers to all the create - * methods of the EmployeeService bean's home interface: - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-name>create<//method-name> - * <//method> - * - * Style 3: The following method element refers to the - * create(String firstName, String LastName) method of the - * EmployeeService bean's home interface. - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-name>create<//method-name> - * <method-params> - * <method-param>java.lang.String<//method-param> - * <method-param>java.lang.String<//method-param> - * <//method-params> - * <//method> - * - * - * 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: - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-name>foobar<//method-name> - * <method-params> - * <method-param>char<//method-param> - * <method-param>int<//method-param> - * <method-param>int[]<//method-param> - * <method-param>mypackage.MyClass<//method-param> - * <method-param>mypackage.MyClass[][]<//method-param> - * <//method-params> - * <//method> - * - * The optional method-intf element can be used when it becomes - * necessary to differentiate between a method defined in the home - * interface and a method with the same name and signature that is - * defined in the remote interface. - * - * For example, the method element - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-intf>Remote<//method-intf> - * <method-name>create<//method-name> - * <method-params> - * <method-param>java.lang.String<//method-param> - * <method-param>java.lang.String<//method-param> - * <//method-params> - * <//method> - * - * can be used to differentiate the create(String, String) method - * defined in the remote interface from the create(String, String) - * method defined in the home interface, which would be defined as - * - * <method> - * <ejb-name>EmployeeService<//ejb-name> - * <method-intf>Home<//method-intf> - * <method-name>create<//method-name> - * <method-params> - * <method-param>java.lang.String<//method-param> - * <method-param>java.lang.String<//method-param> - * <//method-params> - * <//method> - * @generated - * @since 1.0 */ -public interface MethodElement extends J2EEEObject { - - public static final String RIGHT_PAREN = "("; //$NON-NLS-1$ - public static final String LEFT_PAREN = ")"; //$NON-NLS-1$ - public static final String COMMA = ","; //$NON-NLS-1$ - public void addMethodParams(String param); -/** - * Set the params for this method element to an empty array, as opposed - * to null. - */ -public void applyZeroParams(); -/** - * Return true if this MethodElement and @anotherMethodElement - * have the same name, parameters, and type. - */ -boolean equalSignature(MethodElement anotherMethodElement) ; - java.util.List getMethodParams() ;/** - * Answer whether method params apply to this method, e.g., it is specific to one - * overloaded method, even if the method is a zero parameter method. Answer false if no - * parameters apply, that is, the method element applies to all overloaded methods with this name - */ -/** - * Answer a list of all the methods for which this method element applies. The following rules are used: - * - * 1) If the method element type is unspecified, the methods are obtained from the remote interface of the ejb; - * If it is specified, then the appropriate interface is used - * - * 2) If the method name = "*", then all the PUBLIC methods for that interface are returned - * - * 3) If the method name is specified, and no method params are specified, then all public methods for the interface - * having the same name are returned. - * - * 4) If the method name and params are specified, then a zero or one element array is returned, containing the one and only method - * on the interface with the appropriate signature, if it exists - */ -public Method[] getMethods(); -/** - * Return the MethodElement that is most specific. - */ -MethodElement getMostSpecific(MethodElement aMethodElement, JavaClass aJavaClass); -/** - * Return the signature. - * For example: setTwoParamMethod(java.lang.String, java.lang.String) - */ -String getSignature() ; -/** - * Return the type cast to a JavaClass. - */ -JavaClass getTypeJavaClass() ; -public boolean hasMethodParams(); -/** - * Parse @aSignature setting the name and the params. - * A signature example: setTwoParamMethod(java.lang.String, java.lang.String) - */ -void initializeFromSignature(String aSignature) ; -boolean isDefault(); -/** - * Return true if this MethodElement and @anotherMethodElement - * represent the same exact methods. - */ -boolean isEquivalent(MethodElement anotherMethodElement) ; -boolean isHome() ; -boolean isRemote() ; -boolean isUnspecified() ; -boolean isLocalHome() ; -boolean isLocal() ; -boolean isService(); -/** - * Return true if this MethodElement represents one or more - * methods. - */ -public boolean isValid() ; -/** - * Return true if this MethodElement has the same basic signature as - * @aMethod, ignoring the return type, thrown exceptions, and declaring class of - * this instance or @aMethod. Return false, if params is null - */ -public boolean nameAndParamsEquals(Method aMethod); - public void removeMethodParams(String param); -boolean represents(Method aMethod); -public void setIdToReadableString(); -/** - * Return true if this MethodElement uniquely identifies - * @aMethod. Return false, even if the MethodElement represents - * @aMethod (i.e., @aMethod is contained in its list of methods). - */ -boolean uniquelyIdentifies(Method aMethod); - /** - * @generated This field/method will be replaced during code generation - * @return The value of the Name attribute - * The method-name element contains a name of an enterprise bean method, - * or the asterisk (*) character. The asterisk is used when the element - * denotes all the methods of an enterprise bean's remote and home - * interfaces. - - */ - String getName(); - - /** - * @generated This field/method will be replaced during code generation - * @param value The new value of the Name attribute - */ - void setName(String value); - - /** - * @generated This field/method will be replaced during code generation - * @return The value of the Parms attribute - * The method-params element contains a list of the fully-qualified Java type - * names of the method parameters. In the current implementation this is a space - * delimitted String. A null string indicates a generic method element that can - * apply to multiple methods with the same name. An empty string indicates a - * method with zero parameters. - */ - String getParms(); - - /** - * @generated This field/method will be replaced during code generation - * @param value The new value of the Parms attribute - */ - void setParms(String value); - - /** - * @generated This field/method will be replaced during code generation - * @return The value of the Type attribute - */ - MethodElementKind getType(); - - /** - * Sets the value of the '{@link org.eclipse.jst.j2ee.ejb.MethodElement#getType <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Type</em>' attribute. - * @see org.eclipse.jst.j2ee.ejb.MethodElementKind - * @see #isSetType() - * @see #unsetType() - * @see #getType() - * @generated - */ - void setType(MethodElementKind value); - - /** - * Unsets the value of the '{@link org.eclipse.jst.j2ee.ejb.MethodElement#getType <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #isSetType() - * @see #getType() - * @see #setType(MethodElementKind) - * @generated - */ - void unsetType(); - - /** - * Returns whether the value of the '{@link org.eclipse.jst.j2ee.ejb.MethodElement#getType <em>Type</em>}' attribute is set. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return whether the value of the '<em>Type</em>' attribute is set. - * @see #unsetType() - * @see #getType() - * @see #setType(MethodElementKind) - * @generated - */ - boolean isSetType(); - - /** - * @generated This field/method will be replaced during code generation - * @return The value of the Description attribute - * The description element is used by the ejb-jar file producer to provide text - * describing the parent element. The description element should include any - * information that the ejb-jar file producer wants to provide to the consumer of - * the ejb-jar file (i.e. to the Deployer). Typically, the tools used by the - * ejb-jar file consumer will display the description when processing the parent - * element. - */ - String getDescription(); - - /** - * @generated This field/method will be replaced during code generation - * @param value The new value of the Description attribute - */ - void setDescription(String value); - - /** - * @generated This field/method will be replaced during code generation - * @return The EnterpriseBean reference - */ - EnterpriseBean getEnterpriseBean(); - - /** - * @generated This field/method will be replaced during code generation - * @param l The new value of the EnterpriseBean reference - */ - void setEnterpriseBean(EnterpriseBean value); - - /** - * Returns the value of the '<em><b>Descriptions</b></em>' containment reference list. - * The list contents are of type {@link org.eclipse.jst.j2ee.common.Description}. - * <!-- begin-user-doc --> - * <p> - * If the meaning of the '<em>Descriptions</em>' containment reference list isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @return the value of the '<em>Descriptions</em>' containment reference list. - * @see org.eclipse.jst.j2ee.ejb.EjbPackage#getMethodElement_Descriptions() - * @model type="org.eclipse.jst.j2ee.common.Description" containment="true" - * @generated - */ - EList getDescriptions(); - -} - - - - - |