org.eclipse.ocl.examples.codegen.java.types
Class FutureEObjectsDescriptor

java.lang.Object
  extended by org.eclipse.ocl.examples.codegen.java.types.AbstractDescriptor
      extended by org.eclipse.ocl.examples.codegen.java.types.AbstractCollectionDescriptor
          extended by org.eclipse.ocl.examples.codegen.java.types.FutureEObjectsDescriptor
All Implemented Interfaces:
TypeDescriptor, CollectionDescriptor, UnboxedDescriptor

public class FutureEObjectsDescriptor
extends AbstractCollectionDescriptor
implements UnboxedDescriptor

A FutureEObjectsDescriptor describes a yet-to-be-created collection type. It has a pivot CollectionTypeId, and EClassifier and a Java class name.

The Java class is only known by name; it is not yet loadable, since genmodel has not yet generated it.

There is no EClassifier available to perform type conformance checks since thie Java class name was provided as an instanceClassName.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.ocl.examples.codegen.java.types.AbstractDescriptor
AbstractDescriptor.NamedFuture
 
Field Summary
protected  java.lang.String className
           
protected  org.eclipse.emf.ecore.EClassifier eClassifier
           
 
Fields inherited from class org.eclipse.ocl.examples.codegen.java.types.AbstractDescriptor
elementId
 
Constructor Summary
FutureEObjectsDescriptor(CollectionTypeId collectionTypeId, org.eclipse.emf.ecore.EClassifier eClassifier, java.lang.String className)
           
 
Method Summary
 void append(JavaStream javaStream)
          Append the declaration of this type to a JavaStream.
 java.lang.String getClassName()
          Return the fully qualified Java class name described by this type.
 java.lang.Class<?> getJavaClass()
          Return the basic Java class for this descriptor.
 UnboxedDescriptor getUnboxedDescriptor()
          Return the type descriptor for use when an unboxed type would be appropriate.
 java.lang.Class<?> hasJavaClass()
          Return the basic Java class for this descriptor.
 boolean isAssignableFrom(TypeDescriptor typeDescriptor)
          Return true if an instance described by typeDescriptor may be assigned to an instance described by this.
 
Methods inherited from class org.eclipse.ocl.examples.codegen.java.types.AbstractCollectionDescriptor
append, appendBox, appendElement, asCollectionDescriptor, getElementId, isAssignableTo, toString
 
Methods inherited from class org.eclipse.ocl.examples.codegen.java.types.AbstractDescriptor
appendCast, appendCastTerm, appendEqualsValue, appendNotEqualsTerm, appendUnboxStatements, getEClassifier, getPrimitiveDescriptor, reClass, zzisBoxedType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.codegen.generator.TypeDescriptor
appendBox, appendCast, appendCastTerm, appendEqualsValue, appendNotEqualsTerm, appendUnboxStatements, asCollectionDescriptor, getEClassifier, getPrimitiveDescriptor, isAssignableTo
 

Field Detail

eClassifier

@NonNull
protected final org.eclipse.emf.ecore.EClassifier eClassifier

className

@NonNull
protected final java.lang.String className
Constructor Detail

FutureEObjectsDescriptor

public FutureEObjectsDescriptor(@NonNull
                                CollectionTypeId collectionTypeId,
                                @NonNull
                                org.eclipse.emf.ecore.EClassifier eClassifier,
                                @NonNull
                                java.lang.String className)
Method Detail

append

public void append(@NonNull
                   JavaStream javaStream)
Description copied from interface: TypeDescriptor
Append the declaration of this type to a JavaStream. e.g. "typename"

Specified by:
append in interface TypeDescriptor

getClassName

@NonNull
public java.lang.String getClassName()
Description copied from interface: TypeDescriptor
Return the fully qualified Java class name described by this type. In the case of collection types, this method returns the class name of the collection elements.

Specified by:
getClassName in interface TypeDescriptor

getJavaClass

@NonNull
public java.lang.Class<?> getJavaClass()
Description copied from interface: TypeDescriptor
Return the basic Java class for this descriptor. e.g. List for an unboxed collection.

Specified by:
getJavaClass in interface TypeDescriptor

getUnboxedDescriptor

@NonNull
public UnboxedDescriptor getUnboxedDescriptor()
Description copied from interface: TypeDescriptor
Return the type descriptor for use when an unboxed type would be appropriate. Returns this when this is an unboxed descriptor.

Specified by:
getUnboxedDescriptor in interface TypeDescriptor

hasJavaClass

@Nullable
public java.lang.Class<?> hasJavaClass()
Description copied from interface: TypeDescriptor
Return the basic Java class for this descriptor. e.g. List for an unboxed collection. Returns null for no Java class known.

Specified by:
hasJavaClass in interface TypeDescriptor

isAssignableFrom

public final boolean isAssignableFrom(@NonNull
                                      TypeDescriptor typeDescriptor)
Description copied from interface: TypeDescriptor
Return true if an instance described by typeDescriptor may be assigned to an instance described by this.

Specified by:
isAssignableFrom in interface TypeDescriptor