//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