EPackage: java

Changes to synch up with Java3e:
- deleted JavaElement, BodyElement which didn't add anything useful
- deleted NestedClass and the association which described nesting, contents can be used instead
- deleted extends/extendedBy which is replaced with MOF subtype/supertype
- deleted the clumsy main diagram
- moved the MOF inheritance details to the MOF binding diagram
- deleted "final" on JavaParameter, don't know what that was supposed to be
- deleted the Category junk
- changed the Block-typed attributes on Field, Method, Initializer to be associations to Block

Outstanding questions/issues:
- JavaParameterKind should go away if we get the base Parameter kind fixed up

EClass: JavaClass

Inherits from

Structural Features

TypeKind[0,1]kind
EBoolean[0,1]public
EBoolean[0,1]final
JavaClass[0,*]implementsInterfaces
JavaClass[0,*]classImport
JavaPackage[0,*]packageImports
Field[0,*]fields
Method[0,*]methods
Initializer[0,*]initializers
JavaClass[0,*]declaredClasses
JavaClass[0,1]declaringClass
JavaPackage[0,1]javaPackage
JavaEvent[0,*]events
JavaEvent[0,*]allEvents

Operations

EBooleanisNested-
FieldgetField
Return an Field with the passed name, or null.
EString[0,1]fieldName
FieldgetFieldExtended
 Return an Field with the passed name from this JavaClass or any supertypes.

Return null if a Field named fieldName is not found.
EString[0,1]fieldName
FieldgetFieldNamed
Return an Field with the passed name, or null.
EString[0,1]fieldName
JTypeListgetFieldsExtended
Return all fields, including those from supertypes.
-
MethodgetMethod
Get the method of this name and these parameters. It will not look up the supertype hierarchy.
EString[0,1]methodName
JTypeList[0,1]parameterTypes
List of parameter types.
JTypeListgetMethodElementSignatures
Return a List of Strings that represent MethodElement signatures from most general to most specific.
-
MethodgetMethodExtended
Get the method of this name and these parameters. It will look up the supertype hierarchy.
EString[0,1]methodName
JTypeList[0,1]parameterTypes
List of parameter types.
JTypeListgetMethodsExtended
Return all methods, including those from supertypes.
-
JTypeListgetOnlySpecificMethods
Return a List of Methods that begins with @aMethodNamePrefix and is not included in the @excludedNames list. If @aMethodNamePrefix is null, all methods will be returned.
EString[0,1]aMethodNamePrefix
JTypeList[0,1]excludedNames
MethodgetPublicMethod
Return a method matching the name, and non-return parameters with fully qualified types matching all the types in the list, if it exists.  It will not look up the supertype hierarchy.
EString[0,1]methodName
JTypeList[0,1]parameterTypes
List of parameter types.
JTypeListgetPublicMethods
Return all methods, it will not go up the supertype hierarchy.
-
JTypeListgetPublicMethodsExtended
Return all public methods, including those from supertypes.
-
JTypeListgetPublicMethodsNamed
Returns a filtered list on the methods of this class, having a name equal to that of the parameter.
EString[0,1]name
JavaClassgetSupertype-
EBooleanimplementsInterface
Test whether the receiver implements the passed interface (or one of its supertypes).
JavaClass[0,1]interfaceType
EStringinfoString
Return a string showing our details.
-
EBooleaninheritsFrom
Tests whether this class inherits from the passed in class.
JavaClass[0,1]javaClass
EBooleanisExistingType
Does this type exist.
-
EBooleanisInterface
Is this an interface.
-
?setSupertype
Set the supertype.
JavaClass[0,1]javaclass

EClass: Initializer

Structural Features

EBooleanObject[0,1]isStatic
JavaClass[0,1]javaClass
Block[0,1]source

EClass: JavaParameter

Inherits from

Structural Features

EBoolean[0,1]final
JavaParameterKind[0,1]parameterKind

Operations

EBooleanisArray
Is this parameter type an array type.
-
EBooleanisReturn
Is this a return parameter.
-
JTypeJavaHelpersgetJavaType-
EStringgetQualifiedName-

EClass: Method

Inherits from

Structural Features

EBoolean[0,1]abstract
EBoolean[0,1]native
EBoolean[0,1]synchronized
EBoolean[0,1]final
EBoolean[0,1]constructor
EBoolean[0,1]static
JavaVisibilityKind[0,1]javaVisibility
JavaParameter[0,*]parameters
JavaClass[0,*]javaExceptions
JavaClass[0,1]javaClass
Block[0,1]source

Operations

JavaClassgetContainingJavaClass
Return the java class that this method is defined in.
-
EStringgetMethodElementSignature
Return a String with the the method name and its parameters. e.g.  setFirstName(java.lang.String)  .
 
-
JavaParametergetParameter
Return a Parameter with the passed name, or null.
EString[0,1]parameterName
JTypeJavaHelpersgetReturnType
Get the return type.
-
?setReturnType
Set the return type
JTypeJavaHelpers[0,1]type
EStringgetSignature
Replicate the functionality of java.lang.reflect.Method.toString().

Returns a string describing this Method.  The string is formatted as the method access modifiers, if any, followed by the method return type, followed by a space, followed by the class declaring the method, followed by a period, followed by the method name, followed by a parenthesized, comma-separated list of the method's formal parameter types. If the method throws checked exceptions, the parameter list is followed by a space, followed by the word throws followed by a comma-separated list of the thrown exception types.

For example:

    public boolean java.lang.Object.equals(java.lang.Object)

The access modifiers are placed in canonical order as specified by "The Java Language Specification".  This is public, protected or private first, and then other modifiers in the following order: abstract, static, final, synchronized native.
-
EBooleanisGenerated
Returns true if the method is system generated.
This is usually determined by the @generated tag in the comment.
-
?setIsGenerated
Set the isGenerated flag.
EBoolean[0,1]generated
EBooleanisVoid
Is this a void return type method.
-

EClass: Field

Inherits from

Structural Features

EBoolean[0,1]final
EBoolean[0,1]static
JavaVisibilityKind[0,1]javaVisibility
EBoolean[0,1]transient
EBoolean[0,1]volatile
JavaClass[0,1]javaClass
Block[0,1]initializer

Operations

JavaClassgetContainingJavaClass
Get the class that this field is within.
-
EBooleanisArray
Is this field an array type.
-

EClass: Block

Structural Features

EString[0,1]source
EString[0,1]name
Block[0,*]contents

EClass: Comment

Inherits from

EClass: Statement

Inherits from

EClass: JavaPackage

Inherits from

Structural Features

JavaClass[0,*]javaClasses

EClass: JavaDataType

Inherits from

Operations

EStringgetDefaultValueString
Return the default string representing the default value of the primitive.
-

EClass: ArrayType

Describes a Java Array type
   For multi-dimensional arrays, it is unlikely that the component type will be
   specified directly.  This would require instantiating a chain of component types
   such as String[][][][]->String[][][]->String[][]->String[]->String.

  The component type relationship will be computed if the finalComponentType
  and array dimensions is specified.
 
  For this reason, the preferred way to create is through the JavaRefFactory factory method:
       createArrayType(JavaClass finalComponentType, int dimensions)

Inherits from

Structural Features

EInt[0,1]arrayDimensions
EClassifier[1,1]componentType

Operations

JTypeJavaHelpersgetFinalComponentType
Get the final component type for this Array Type.

In order to ensure a unique instance, we will resolve this type using reflection. It turns out to be most efficient to just do this by trimming the name.
-
JTypeJavaHelpersgetComponentTypeAsHelper
Get the component type of this array. 

If this is a multi-dimensional array, the component type will be the nested array type.
-
EBooleanisPrimitiveArray
Is this an array of java primitives
-
?setComponentType
Set the component type.
JTypeJavaHelpers[0,1]helperComponentType

EClass: JavaEvent

Inherits from

EEnum: TypeKind

UNDEFINED=1 CLASS=2 INTERFACE=3 EXCEPTION=4

EEnum: JavaVisibilityKind

PACKAGE=1
PUBLIC=2
PRIVATE=3
PROTECTED=4

EEnum: JavaParameterKind

IN=0
OUT=1
INOUT=2
RETURN=3

EDataType: JTypeJavaHelpers

This interface is a common interface between JavaClass and JavaDataType plus some common helper methods.

Mapped to: org.eclipse.jem.java.JavaHelpers

EDataType: JTypeList

java.util.List type

Mapped to: java.util.List

EPackage: ecore

EClass: EAttribute

Inherits from

Structural Features

EBoolean[0,1]iD
EDataType[1,1]eAttributeType

EClass: EAnnotation

Inherits from

Structural Features

EString[0,1]source
EStringToStringMapEntry[0,*]details
EModelElement[0,1]eModelElement
EObject[0,*]contents
EObject[0,*]references

EClass: EClass

Inherits from

Structural Features

EBoolean[0,1]abstract
EBoolean[0,1]interface
EClass[0,*]eSuperTypes
EOperation[0,*]eOperations
EAttribute[0,*]eAllAttributes
EReference[0,*]eAllReferences
EReference[0,*]eReferences
EAttribute[0,*]eAttributes
EReference[0,*]eAllContainments
EOperation[0,*]eAllOperations
EStructuralFeature[0,*]eAllStructuralFeatures
EClass[0,*]eAllSuperTypes
EAttribute[0,1]eIDAttribute
EStructuralFeature[0,*]eStructuralFeatures
EGenericType[0,*]eGenericSuperTypes
EGenericType[0,*]eAllGenericSuperTypes

Operations

EBooleanisSuperTypeOf
EClass[0,1]someClass
EIntgetFeatureCount-
EStructuralFeaturegetEStructuralFeature
EInt[0,1]featureID
EIntgetFeatureID
EStructuralFeature[0,1]feature
EStructuralFeaturegetEStructuralFeature
EString[0,1]featureName

EClass: EClassifier

Inherits from

Structural Features

EString[0,1]instanceClassName
EJavaClass[0,1]instanceClass
EJavaObject[0,1]defaultValue
EString[0,1]instanceTypeName
EPackage[0,1]ePackage
ETypeParameter[0,*]eTypeParameters

Operations

EBooleanisInstance
EJavaObject[0,1]object
EIntgetClassifierID-

EClass: EDataType

Inherits from

Structural Features

EBoolean[0,1]serializable

EClass: EEnum

Inherits from

Structural Features

EEnumLiteral[0,*]eLiterals

Operations

EEnumLiteralgetEEnumLiteral
EString[0,1]name
EEnumLiteralgetEEnumLiteral
EInt[0,1]value
EEnumLiteralgetEEnumLiteralByLiteral
EString[0,1]literal

EClass: EEnumLiteral

Inherits from

Structural Features

EInt[0,1]value
EEnumerator[0,1]instance
EString[0,1]literal
EEnum[0,1]eEnum

EClass: EFactory

Inherits from

Structural Features

EPackage[1,1]ePackage

Operations

EObjectcreate
EClass[0,1]eClass
EJavaObjectcreateFromString
EDataType[0,1]eDataType
EString[0,1]literalValue
EStringconvertToString
EDataType[0,1]eDataType
EJavaObject[0,1]instanceValue

EClass: EModelElement

Inherits from

Structural Features

EAnnotation[0,*]eAnnotations

Operations

EAnnotationgetEAnnotation
EString[0,1]source

EClass: ENamedElement

Inherits from

Structural Features

EString[0,1]name

EClass: EObject

Operations

EClasseClass-
EBooleaneIsProxy-
EResourceeResource-
EObjecteContainer-
EStructuralFeatureeContainingFeature-
EReferenceeContainmentFeature-
EEListeContents-
ETreeIteratoreAllContents-
EEListeCrossReferences-
EJavaObjecteGet
EStructuralFeature[0,1]feature
EJavaObjecteGet
EStructuralFeature[0,1]feature
EBoolean[0,1]resolve
?eSet
EStructuralFeature[0,1]feature
EJavaObject[0,1]newValue
EBooleaneIsSet
EStructuralFeature[0,1]feature
?eUnset
EStructuralFeature[0,1]feature

EClass: EOperation

Inherits from

Structural Features

EClass[0,1]eContainingClass
ETypeParameter[0,*]eTypeParameters
EParameter[0,*]eParameters
EClassifier[0,*]eExceptions
EGenericType[0,*]eGenericExceptions

EClass: EPackage

Inherits from

Structural Features

EString[0,1]nsURI
EString[0,1]nsPrefix
EFactory[1,1]eFactoryInstance
EClassifier[0,*]eClassifiers
EPackage[0,*]eSubpackages
EPackage[0,1]eSuperPackage

Operations

EClassifiergetEClassifier
EString[0,1]name

EClass: EParameter

Inherits from

Structural Features

EOperation[0,1]eOperation

EClass: EReference

Inherits from

Structural Features

EBoolean[0,1]containment
EBoolean[0,1]container
EBoolean[0,1]resolveProxies
EReference[0,1]eOpposite
EClass[1,1]eReferenceType
EAttribute[0,*]eKeys

EClass: EStructuralFeature

Inherits from

Structural Features

EBoolean[0,1]changeable
EBoolean[0,1]volatile
EBoolean[0,1]transient
EString[0,1]defaultValueLiteral
EJavaObject[0,1]defaultValue
EBoolean[0,1]unsettable
EBoolean[0,1]derived
EClass[0,1]eContainingClass

Operations

EIntgetFeatureID-
EJavaClassgetContainerClass-

EClass: ETypedElement

Inherits from

Structural Features

EBoolean[0,1]ordered
EBoolean[0,1]unique
EInt[0,1]lowerBound
EInt[0,1]upperBound
EBoolean[0,1]many
EBoolean[0,1]required
EClassifier[0,1]eType
EGenericType[0,1]eGenericType

EClass: EStringToStringMapEntry

Structural Features

EString[0,1]key
EString[0,1]value

EClass: EGenericType

Inherits from

Structural Features

EGenericType[0,1]eUpperBound
EGenericType[0,*]eTypeArguments
EClassifier[1,1]eRawType
EGenericType[0,1]eLowerBound
ETypeParameter[0,1]eTypeParameter
EClassifier[0,1]eClassifier

EClass: ETypeParameter

Inherits from

Structural Features

EGenericType[0,*]eBounds

EDataType: EBigDecimal

Mapped to: java.math.BigDecimal

EDataType: EBigInteger

Mapped to: java.math.BigInteger

EDataType: EBoolean

Mapped to: boolean

EDataType: EBooleanObject

Mapped to: java.lang.Boolean

EDataType: EByte

Mapped to: byte

EDataType: EByteArray

Mapped to: byte[]

EDataType: EByteObject

Mapped to: java.lang.Byte

EDataType: EChar

Mapped to: char

EDataType: ECharacterObject

Mapped to: java.lang.Character

EDataType: EDate

Mapped to: java.util.Date

EDataType: EDiagnosticChain

Mapped to: org.eclipse.emf.common.util.DiagnosticChain

EDataType: EDouble

Mapped to: double

EDataType: EDoubleObject

Mapped to: java.lang.Double

EDataType: EEList

Mapped to: org.eclipse.emf.common.util.EList

EDataType: EEnumerator

Mapped to: org.eclipse.emf.common.util.Enumerator

EDataType: EFeatureMap

Mapped to: org.eclipse.emf.ecore.util.FeatureMap

EDataType: EFeatureMapEntry

Mapped to: org.eclipse.emf.ecore.util.FeatureMap$Entry

EDataType: EFloat

Mapped to: float

EDataType: EFloatObject

Mapped to: java.lang.Float

EDataType: EInt

Mapped to: int

EDataType: EIntegerObject

Mapped to: java.lang.Integer

EDataType: EJavaClass

Mapped to: java.lang.Class

EDataType: EJavaObject

Mapped to: java.lang.Object

EDataType: ELong

Mapped to: long

EDataType: ELongObject

Mapped to: java.lang.Long

EDataType: EMap

Mapped to: java.util.Map

EDataType: EResource

Mapped to: org.eclipse.emf.ecore.resource.Resource

EDataType: EResourceSet

Mapped to: org.eclipse.emf.ecore.resource.ResourceSet

EDataType: EShort

Mapped to: short

EDataType: EShortObject

Mapped to: java.lang.Short

EDataType: EString

Mapped to: java.lang.String

EDataType: ETreeIterator

Mapped to: org.eclipse.emf.common.util.TreeIterator