//Artefact:ModelClass/com/sphenon/modelling/xmodel/XMLogicFactory

Description

Code and settings, that are used in the factory class.

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/Constructors

Description

Additional constructors (besides the default constructor) with different sets of additional arguments.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/TargetInterfaceType

Description

Interface type of instances, which are created by this factory.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/TargetImplementationType

Description

Implementation type of instances, which are created by this factory.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/FactoryId

Description

Implementation type of this factory. The default factory's id is 'Default'.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/ReadOnly

Description

If true, and the respective attribute is also generally marked as readonly, it is readonly in the Factory, too.
Typical usage is for a tightly integrated subobject with a factory default value and which is edited in the factory.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/Body

Description

Code, that is inserted directly into the generated factory implementation.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/FactoryBody

Description

Code, that is inserted directly into the generated class implementation, but is specified at attributes or association ends
  • states.
  • Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/Validation

    Description

    Code, that is inserted in the validate-method.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/ValidationCache

    Description

    If true, validation is only performed once until the respective attribute is modified via it's set method.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/Sticky

    Description

    If true, this attribute is not affected by a factory reset.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/FinalValidation

    Description

    Code, that is executed after all attributes of the factory have been set and normal (attribute validation has taken place), but before a new instance is created. This code is typically costly, so that it should be executed only once after the user has confirmed that a creation shall take place.
    In contrast, normal attribute validation may be performed after entering or leaving input fields, or even after each key stroke in a field.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/GetBody

    Description

    Code, that is used in automatically generated get methods to retrieve the actual value. If omitted, a default piece of code is generated, simply using the member variable.
    If provided, this code must define a variable named "result" and assign it the value to return. It must not return this variable by itself, since postprocessing code might be applied.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/BeforeGetBody

    Description

    Code, that is inserted in automatically generated get methods before the actual value is retrieved. If defined on class level, the code is used for each attribute.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/AfterGetBody

    Description

    Code, that is inserted in automatically generated get methods after the actual value is retrieved, immediately before it is returned. If defined on class level, the code is used for each attribute.
    This code has access to a local variable named "result", which is assigned the value to be returned.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/BeforeSetBody

    Description

    Code, that is inserted in automatically generated set methods before the actual value assignment takes place. If defined on class level, the code is used for each attribute.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/AfterSetBody

    Description

    Code, that is inserted in automatically generated set methods after the actual value assignment took place. If defined on class level, the code is used for each attribute.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/OperationBody

    Description

    Code, that is used in operations.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☑ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/InstancePreparationBody

    Description

    Code, that is executed after all attributes of a newly instantiated instance have been set, before final validation takes place, and before such an instance is delivered.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/InstancePostparationBody

    Description

    Code, that is executed after all attributes of a newly instantiated instance have been set, after final validation has taken place, and before such an instance is delivered.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/Decoupled

    Description

    If true, the value of this attribute is not transfered from the factory into the instance, as would be the very normal case.
    This might be useful, if e.g. on both sides this attribute is calculated and transient and shall not be shared between factory and instance.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/StandardCreateOperation

    Description

    If true, and no OperationBody is provided, this method is implemented as a standard create operation.
    Applies to
    ▸ Model level: ☐ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☑ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/StandardPreCreateOperation

    Description

    If true, and no OperationBody is provided, this method is implemented as a standard precreate operation.
    Applies to
    ▸ Model level: ☐ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☑ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/StandardMustCreateOperation

    Description

    If true, and no OperationBody is provided, this method is implemented as a standard mustcreate operation.
    Applies to
    ▸ Model level: ☐ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☑ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/PrepareFactoryFinally

    Description

    Code, that is inserted and executed direct after the complete Validation of the factory is passed successfully. Implementors should place there expensive operations like the creation of depending objects. Implementors should throw ValidationFailure if operations fail and should use the invalidate methods to propagate the failure correctly into the UI
    Applies to
    ▸ Model level: ☑ logical model ∙ ☑ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/MaintainDerivedFactories

    Description

    If true, the factory for instances of this model elements maintains a list of dervided factories. These derived factories are included in an optinally automatically created factory choice set, see also XMLogicFactory/HasFactoryChoiceSet and XMLogicFactory/RegisterInBaseFactory for more information.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☐ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/RegisterInBaseFactory

    Description

    If true, the factory for instances of this model elements registers itself in the derived factory list maintained by it's base factory, see XMLogicFactory/MaintainDerivedFactories.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☐ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/HasFactoryChoiceSet

    Description

    If true, the factory for instances of this model element provides a method to calculate a factory choice set. This choice set can be presented in the UI whenever a new instance of this model element is to be created, so that in effect the specific (derived) type to be created can be choosen from.
    Derived factories can be included automatically in this choice set. For this to work, the properties XMLogicFactory/MaintainDerivedFactories and XMLogicFactory/RegisterInBaseFactory must be enabled appropirately for the participating factories in the inheritance tree.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☐ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/FactoryChoiceSetConstructors

    Description

    Normally, an instance of a class' factory is constructed and added to a factory choice set, if XMLogicFactory/RegisterInBaseFactory is enabled.
    If provided, this property defines a list of factory construction code. Each entry in the list is then added to the factory choice set. This is useful, if factory instances can be parametrised and each instance shall contain a different parameter value, so that one such factory class corresponds to several instances, which behave differently.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☐ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

    //Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMLogicFactory/FactoryChoiceSetConstructorSet

    Description

    Similar to XMLogicFactory/FactoryChoiceSetConstructors, this property code defines a set of factory constructors, but in contrast it does not define a fixed set, but a dynamically constructed set with a variable number of entries.
    Applies to
    ▸ Model level: ☑ logical model ∙ ☐ technical model
    ▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states