Class JavaModel
java.lang.Object
org.eclipse.epsilon.eol.models.Model
org.eclipse.epsilon.eol.models.java.JavaModel
- All Implemented Interfaces:
AutoCloseable,IModel,IReflectiveModel
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.epsilon.eol.models.IModel
IModel.AmbiguityCheckResult -
Field Summary
FieldsFields inherited from class org.eclipse.epsilon.eol.models.Model
aliases, ENV_PREFIX, name, PROPERTY_ALIASES, PROPERTY_NAME, PROPERTY_READONLOAD, PROPERTY_READONLY, PROPERTY_STOREONDISPOSAL, propertyGetter, propertySetter, readOnLoad, storeOnDisposal -
Constructor Summary
ConstructorsConstructorDescriptionJavaModel(String name, Collection<? extends Object> objects, Collection<? extends Class<?>> classes) JavaModel(Collection<? extends Object> objects, Collection<? extends Class<?>> classes) -
Method Summary
Modifier and TypeMethodDescriptionReturns a collection containing all of the objects contained in this model.Class<?>classForName(String name) createInstance(String type) voiddeleteElement(Object instance) voiddispose()Collection<?>getAllOfKind(String type) Collection<?>getAllOfType(String type) getContainerOf(Object object) Returns the model element that contains the given model element, or null if the given model element is top-level.getElementById(String id) getElementId(Object instance) getEnumerationLabelOf(Object literal) Returns the enumeration label of the literal parameter.getEnumerationTypeOf(Object literal) Returns the name of the enumeration type of the literal parameter.getEnumerationValue(String enumeration, String label) getPropertiesOf(String type) Returns a collection containing all of the properties that instances of type know about.getTypeNameOf(Object instance) Returns a string representing the type of the instance object.booleanhasPackage(String packageName) Returns true iff this model contains a package with the given name.booleanhasProperty(String type, String property) booleanbooleanisEnumerationValue(Object object) Returns true iff object is an enumeration value.booleanisInstantiable(Class<?> c) booleanisInstantiable(String type) booleanisLoaded()booleanisModelElement(Object instance) Used to test whether a Java object can be contained by this model.booleanbooleanvoidload()booleanUsed to test whether an object is contained in this model.booleanPrevents the loading of model elements that are referenced by this model but are not contained in this model.voidsetElementId(Object instance, String newId) booleanstore()booleanMethods inherited from class org.eclipse.epsilon.eol.models.Model
allInstances, createInstance, getAliases, getFullyQualifiedTypeNameOf, getMetamodel, getName, getPropertyGetter, getTransactionSupport, isPropertySet, isReadOnLoad, isStoredOnDisposal, knowsAboutProperty, load, load, load, setName, setReadOnLoad, setStoredOnDisposalMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.epsilon.eol.models.IModel
checkAmbiguity, close, createInstance, getAliases, getFullyQualifiedTypeNameOf, getMetamodel, getName, getPropertyGetter, getTransactionSupport, isPropertySet, isReadOnLoad, isStoredOnDisposal, knowsAboutProperty, load, load, load, setName, setReadOnLoad, setStoredOnDisposal
-
Field Details
-
objects
-
classes
-
-
Constructor Details
-
JavaModel
public JavaModel(String name, Collection<? extends Object> objects, Collection<? extends Class<?>> classes) -
JavaModel
-
-
Method Details
-
allContents
Description copied from interface:IModelReturns a collection containing all of the objects contained in this model.- Specified by:
allContentsin interfaceIModel- Returns:
- all of the objects contained in this model.
-
classForName
-
createInstance
public Object createInstance(String type) throws EolModelElementTypeNotFoundException, EolNotInstantiableModelElementTypeException - Specified by:
createInstancein interfaceIModel- Throws:
EolModelElementTypeNotFoundExceptionEolNotInstantiableModelElementTypeException
-
isInstantiable
-
deleteElement
- Specified by:
deleteElementin interfaceIModel- Throws:
EolRuntimeException
-
getAllOfKind
- Specified by:
getAllOfKindin interfaceIModel- Throws:
EolModelElementTypeNotFoundException
-
getAllOfType
- Specified by:
getAllOfTypein interfaceIModel- Throws:
EolModelElementTypeNotFoundException
-
isOfKind
public boolean isOfKind(Object instance, String metaClass) throws EolModelElementTypeNotFoundException - Specified by:
isOfKindin interfaceIModel- Overrides:
isOfKindin classModel- Throws:
EolModelElementTypeNotFoundException
-
isOfType
public boolean isOfType(Object instance, String metaClass) throws EolModelElementTypeNotFoundException - Specified by:
isOfTypein interfaceIModel- Overrides:
isOfTypein classModel- Throws:
EolModelElementTypeNotFoundException
-
getElementById
- Specified by:
getElementByIdin interfaceIModel
-
getElementId
- Specified by:
getElementIdin interfaceIModel
-
setElementId
- Specified by:
setElementIdin interfaceIModel
-
getEnumerationValue
public Object getEnumerationValue(String enumeration, String label) throws EolEnumerationValueNotFoundException - Specified by:
getEnumerationValuein interfaceIModel- Throws:
EolEnumerationValueNotFoundException
-
getTypeOf
-
getTypeNameOf
Description copied from interface:IModelReturns a string representing the type of the instance object. The value returned by this function can be passed to createInstance to instantiate another object of the same type as instance.- Specified by:
getTypeNameOfin interfaceIModel- Parameters:
instance- The model object whose type is to be determined.- Returns:
- the name of the type of the model object, instance.
-
hasType
-
hasPackage
Description copied from interface:IReflectiveModelReturns true iff this model contains a package with the given name. In general, a "package" is a group of types (and potentially other packages) and a namespace for the grouped elements. The precise semantics of "package" is specific to the implementation. For example, an Ecore implementation might use EPackage. An XML implementation might use XML namespaces. A CSV implementation might not support any notion of packages (and hence always return false).- Specified by:
hasPackagein interfaceIReflectiveModel
-
getContainerOf
Description copied from interface:IReflectiveModelReturns the model element that contains the given model element, or null if the given model element is top-level.- Specified by:
getContainerOfin interfaceIReflectiveModel- Parameters:
object- The model element whose container is to be found.- Returns:
- the model element that contains object, or null if object is not contained in any other model element.
-
isInstantiable
- Specified by:
isInstantiablein interfaceIModel
-
getPropertiesOf
Description copied from interface:IReflectiveModelReturns a collection containing all of the properties that instances of type know about.- Specified by:
getPropertiesOfin interfaceIReflectiveModel- Parameters:
type- The type of model object whose properties are to be determined.- Returns:
- all of the properties that instances of type knows about.
- Throws:
EolModelElementTypeNotFoundException- when this model has no such type
-
hasProperty
public boolean hasProperty(String type, String property) throws EolModelElementTypeNotFoundException - Specified by:
hasPropertyin interfaceIReflectiveModel- Throws:
EolModelElementTypeNotFoundException
-
getPropertySetter
- Specified by:
getPropertySetterin interfaceIModel- Specified by:
getPropertySetterin interfaceIReflectiveModel- Overrides:
getPropertySetterin classModel
-
isModelElement
Description copied from interface:IModelUsed to test whether a Java object can be contained by this model. For example, EMF models can contain instances of EObject, but not instances of just Object.- Specified by:
isModelElementin interfaceIModel- Overrides:
isModelElementin classModel- Parameters:
instance- the Java object to test.- Returns:
- true if and only if instance can be contained by this model.
-
isEnumerationValue
Description copied from interface:IReflectiveModelReturns true iff object is an enumeration value.- Specified by:
isEnumerationValuein interfaceIReflectiveModel
-
getEnumerationTypeOf
Description copied from interface:IReflectiveModelReturns the name of the enumeration type of the literal parameter.- Specified by:
getEnumerationTypeOfin interfaceIReflectiveModel- Throws:
EolNotAnEnumerationValueException- when literal is not an enumeration value
-
getEnumerationLabelOf
Description copied from interface:IReflectiveModelReturns the enumeration label of the literal parameter.- Specified by:
getEnumerationLabelOfin interfaceIReflectiveModel- Throws:
EolNotAnEnumerationValueException- when literal is not an enumeration value
-
preventLoadingOfExternalModelElements
public boolean preventLoadingOfExternalModelElements()Description copied from interface:IReflectiveModelPrevents the loading of model elements that are referenced by this model but are not contained in this model. This is useful for clients, such as Epsilon Flock, which create a clone or conservative copy of this model.- Specified by:
preventLoadingOfExternalModelElementsin interfaceIReflectiveModel- Returns:
- true iff this method had an effect (i.e. when this model supports external references, was configured to load external references and is no longer configured to load external references).
-
load
- Specified by:
loadin interfaceIModel- Throws:
EolModelLoadingException
-
owns
Description copied from interface:IModelUsed to test whether an object is contained in this model. -
store
-
store
public boolean store() -
dispose
public void dispose() -
isLoaded
public boolean isLoaded()- Since:
- 1.6
-