public interface FMLObject extends FlexoObject, org.openflexo.connie.Bindable, InnerResourceData<FMLCompilationUnit>, TechnologyObject<FMLTechnologyAdapter>
VirtualModel
(a FML "program").FMLObject
has a name, a description and can be identified by an URI
It represents an object which is part of a FML model.VirtualModel
in which this object "lives" using InnerResourceData.getResourceData()
FMLObject
is a Bindable
as conforming to CONNIE binding schemeFMLObject
is a InnerResourceData
(in a VirtualModel)FMLObject
is a TechnologyObject
(powered with FMLTechnologyAdapter
)Modifier and Type | Interface and Description |
---|---|
static class |
FMLObject.BindingIsRecommandedAndShouldBeValid<C extends FMLObject> |
static class |
FMLObject.BindingIsRequiredAndMustBeValid<C extends FMLObject> |
static class |
FMLObject.BindingMustBeValid<C extends FMLObject> |
static class |
FMLObject.FMLObjectImpl |
FlexoObject.FlexoObjectImpl
Modifier and Type | Field and Description |
---|---|
static String |
AUTHOR_KEY |
static String |
DESCRIPTION_KEY |
static String |
META_DATA_KEY |
static String |
NAME_KEY |
BINDING_FACTORY_PROPERTY, BINDING_MODEL_PROPERTY
FLEXO_ID_KEY, USER_IDENTIFIER_KEY
Modifier and Type | Method and Description |
---|---|
void |
addToFMLPropertyValues(FMLPropertyValue<?,?> propertyValue) |
void |
addToMetaData(FMLMetaData metaData) |
void |
finalizeDeserialization() |
String |
getAuthor() |
BasicMetaData |
getBasicMetaData(String key) |
FMLCompilationUnit |
getDeclaringCompilationUnit()
|
CompilationUnitResource |
getDeclaringCompilationUnitResource()
|
String |
getDescription() |
String |
getFMLKeyword(FMLModelFactory modelFactory) |
FMLModelFactory |
getFMLModelFactory() |
List<FMLModelContext.FMLProperty<?,?>> |
getFMLProperties(FMLModelFactory modelFactory) |
FMLModelContext.FMLProperty<?,?> |
getFMLProperty(String propertyName,
FMLModelFactory modelFactory) |
List<FMLPropertyValue<?,?>> |
getFMLPropertyValues(FMLModelFactory modelFactory) |
Class<?> |
getImplementedInterface(FMLModelFactory modelFactory) |
ListMetaData |
getListMetaData(String key) |
List<FMLMetaData> |
getMetaData()
Return list of meta-data declared for this object
|
FMLMetaData |
getMetaData(String key) |
MultiValuedMetaData |
getMultiValuedMetaData(String key) |
String |
getName() |
org.openflexo.connie.BindingEvaluationContext |
getReflectedBindingEvaluationContext()
Return reflected BindingEvaluationContext, obtained at metadata conceptual level
|
FlexoServiceManager |
getServiceManager()
Return the URI of the
NamedFMLObject The convention for URI are following: eg http://www.mydomain.org/MyViewPoint/MyVirtualModel#MyFlexoConcept.MyBehaviour |
<T> T |
getSingleMetaData(String key,
Class<T> type) |
String |
getStringRepresentation()
Return a string representation suitable for a common user
This representation will used in all GUIs |
TechnologyAdapterService |
getTechnologyAdapterService() |
VirtualModelLibrary |
getVirtualModelLibrary() |
void |
handleRequiredImports(FMLCompilationUnit compilationUnit)
Ensure required imports are declared in CompilationUnit
|
boolean |
hasDescription() |
boolean |
hasFMLProperties(FMLModelFactory modelFactory) |
boolean |
hasMetaData(String key) |
void |
initializeDeserialization(FMLModelFactory factory) |
void |
notifiedScopeChanged()
Hook called when scope of a FMLObject changed.
It happens for example when a VirtualModel is declared to be contained in a VirtualModel On that example Bindable.getBindingFactory() rely on VirtualModel enclosing, we must provide this hook to give a chance to
objects that rely on ViewPoint instanciation context to update their bindings (some bindings might becomes valid)It may also happen if an EditionAction is moved from a control graph to another control graph, etc... |
void |
removeFromMetaData(FMLMetaData metaData) |
void |
setAuthor(String author) |
void |
setBasicMetaData(String key) |
void |
setDescription(String description) |
void |
setName(String name) |
<T> void |
setSingleMetaData(String key,
T value,
Class<T> type) |
getBindingFactory, getBindingModel, notifiedBindingChanged, notifiedBindingDecoded
getDeletedProperty, getPropertyChangeSupport
getResourceData
getTechnologyAdapter
addToReferencers, getActionList, getFlexoID, getImplementedInterface, getLocales, getReferencers, getUserIdentifier, hash, obtainNewFlexoID, removeFromReferencers, render, setFlexoID, setIsModified, setUserIdentifier
static final String NAME_KEY
static final String DESCRIPTION_KEY
static final String AUTHOR_KEY
static final String META_DATA_KEY
String getName()
void setName(String name) throws InvalidNameException
InvalidNameException
String getAuthor()
void setAuthor(String author)
String getDescription()
void setDescription(String description)
boolean hasDescription()
List<FMLMetaData> getMetaData()
void addToMetaData(FMLMetaData metaData)
void removeFromMetaData(FMLMetaData metaData)
FMLMetaData getMetaData(String key)
boolean hasMetaData(String key)
BasicMetaData getBasicMetaData(String key)
void setBasicMetaData(String key)
MultiValuedMetaData getMultiValuedMetaData(String key)
ListMetaData getListMetaData(String key)
FlexoServiceManager getServiceManager()
NamedFMLObject
getServiceManager
in interface FlexoObject
FMLCompilationUnit getDeclaringCompilationUnit()
CompilationUnitResource getDeclaringCompilationUnitResource()
VirtualModelLibrary getVirtualModelLibrary()
FMLModelFactory getFMLModelFactory()
String getStringRepresentation()
void initializeDeserialization(FMLModelFactory factory)
void finalizeDeserialization()
void notifiedScopeChanged()
VirtualModel
is declared to be contained in a VirtualModel
Bindable.getBindingFactory()
rely on VirtualModel
enclosing, we must provide this hook to give a chance to
objects that rely on ViewPoint instanciation context to update their bindings (some bindings might becomes valid)TechnologyAdapterService getTechnologyAdapterService()
org.openflexo.connie.BindingEvaluationContext getReflectedBindingEvaluationContext()
void handleRequiredImports(FMLCompilationUnit compilationUnit)
Class<?> getImplementedInterface(FMLModelFactory modelFactory)
String getFMLKeyword(FMLModelFactory modelFactory)
boolean hasFMLProperties(FMLModelFactory modelFactory)
List<FMLModelContext.FMLProperty<?,?>> getFMLProperties(FMLModelFactory modelFactory)
FMLModelContext.FMLProperty<?,?> getFMLProperty(String propertyName, FMLModelFactory modelFactory)
List<FMLPropertyValue<?,?>> getFMLPropertyValues(FMLModelFactory modelFactory)
void addToFMLPropertyValues(FMLPropertyValue<?,?> propertyValue)
Copyright © 2022 Openflexo. All rights reserved.