T
- the implementation of IVertex used for all nodes.public interface IGeneric<T extends IGeneric<T>> extends ISignature<T>
Modifier and Type | Interface and Description |
---|---|
static interface |
IGeneric.SystemProperty
Represents a system property in Generic System.
|
static class |
IGeneric.Visitor<T extends IGeneric<T>>
Used for the path of a tree.
|
Modifier and Type | Method and Description |
---|---|
T |
addAttribute(List<T> overrides,
Serializable value,
T... targets)
Returns a new attribute on this type that satisfies the specified
overrides , value and targets . |
T |
addAttribute(Serializable value,
T... targets)
Returns a new attribute on this type that satisfies the specified
value and targets . |
T |
addAttribute(T override,
Serializable value,
T... targets)
Returns a new attribute on this type that satisfies the specified
override , value and targets . |
T |
addHolder(T attribute,
List<T> overrides,
Serializable value,
T... targets)
Returns a new holder on this instance that satisfies the specified
overrides , value and targets . |
T |
addHolder(T attribute,
Serializable value,
T... targets)
Returns a new holder on this instance that satisfies the specified
value and targets . |
T |
addHolder(T attribute,
T override,
Serializable value,
T... targets)
Returns a new holder on this instance that satisfies the specified
override , value and targets . |
T |
addInstance(List<T> overrides,
Serializable value,
T... components)
Returns a new instance of this type that satisfies the specified
overrides , value and components . |
T |
addInstance(Serializable value,
T... components)
Returns a new instance of this type that satisfies the specified
value and components . |
T |
addInstance(T override,
Serializable value,
T... components)
Returns a new instance of this type that satisfies the specified
override , value and components . |
T |
addLink(T relation,
List<T> overrides,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new link on this instance that satisfies the specified
overrides , value , firstTarget and otherTargets . |
T |
addLink(T relation,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new link on this instance that satisfies the specified
value , firstTarget and otherTargets . |
T |
addLink(T relation,
T override,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new link on this instance that satisfies the specified
override , value , firstTarget and otherTargets . |
T |
addRelation(List<T> overrides,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new relation on this type that satisfies the specified
overrides , value , firstTarget and otherTargets . |
T |
addRelation(Serializable value,
T firstTarget,
T... otherTargets)
Returns a new relation on this type that satisfies the specified
value , firstTarget and otherTargets . |
T |
addRelation(T override,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new relation on this type that satisfies the specified
override , value , firstTarget and otherTargets . |
T[] |
addThisToTargets(T... targets)
Utility method for creating a real array of
T implementation with this in first position and targets after. |
T[] |
addThisToTargets(T firstTarget,
T... otherTargets)
Utility method for create a real array of
T implementation with this in first position, firstTarget in second position and otherTargets after. |
T[] |
coerceToTArray(Object... array)
Technical method for creating a real array of
T implementation for passing safe varags parameter and avoid heap pollution. |
String |
detailedInfo()
Returns a
String detailed representation of this vertex. |
T |
disableCascadeRemove(int pos)
Disable the cascade remove property of this vertex for the specified position.
|
T |
disableHashedInstanceValue()
Declares that this vertex’s instances values are not hashes (default).
|
T |
disableInheritance()
Disable inheritance on this vertex.
|
T |
disablePropertyConstraint()
Disable the property constraint of this vertex.
|
T |
disableReferentialIntegrity(int pos)
Disable the referential integrity constraint of this vertex for the specified position.
|
T |
disableRequiredConstraint(int pos)
Disable the required constraint of this vertex for the specified position.
|
T |
disableSingularConstraint(int pos)
Disable the singular constraint of this vertex for the specified position.
|
T |
disableSystemProperty(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos,
T... targets)
Disable this vertex for the specified boolean system property, position and
targets . |
T |
disableUniqueValueConstraint()
Disable the unique value constraint of this vertex.
|
T |
enableCascadeRemove(int pos)
Enable the cascade remove property of this vertex for the specified position.
|
T |
enableHashedInstanceValue()
Declares that this vertex’s instances values are hashes.
|
T |
enableInheritance()
Enable the inheritance on this vertex.
|
T |
enablePropertyConstraint()
Enable the property constraint of this vertex.
|
T |
enableReferentialIntegrity(int pos)
Enable the referential integrity constraint of this vertex for the specified position.
|
T |
enableRequiredConstraint(int pos)
Enable the required constraint of this vertex for the specified position.
|
T |
enableSingularConstraint(int pos)
Enable the singular constraint of this vertex for the specified position.
|
T |
enableSystemProperty(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos,
T... targets)
Enable this vertex for the specified boolean system property, position and
targets . |
T |
enableUniqueValueConstraint()
Enable the unique value constraint of this vertex.
|
T |
getAttribute(Serializable value,
T... targets)
Returns if exists the attribute of this (meta) vertex.
|
T |
getAttribute(T... targets)
Returns if exists the attribute of this (meta) vertex.
|
Snapshot<T> |
getAttributes()
Returns the attributes of this vertex (directly if this vertex is a type, the attributes of its type if this vertex is an instance).
|
Snapshot<T> |
getAttributes(int pos)
Returns the attributes of this vertex (directly if this vertex is a type, the attributes of its type if this vertex is an instance) for which this vertex is in the specified position in their components.
|
Snapshot<T> |
getAttributes(Serializable value,
T... targets)
Returns the attributes of this vertex (directly if this vertex is a type, the attributes of its type if this vertex is an instance).
|
Snapshot<T> |
getAttributes(T... targets)
Returns the attributes of this vertex (directly if this vertex is a type, the attributes of its type if this vertex is an instance).
|
Snapshot<T> |
getAttributes(T attribute)
Returns the attributes of this vertex that inherit from the specified
attribute . |
T |
getBaseComponent()
Returns the component at the
BASE position, that is to say the component at the position 0. |
T |
getComponent(int pos)
Returns the component at the specified position.
|
T |
getComposite(Serializable value)
Returns composite vertices for which this vertex is a component.
|
Snapshot<T> |
getComposites()
Returns composite vertices for which this vertex is a component.
|
Snapshot<T> |
getComposites(Serializable value)
Returns composite vertices for which this vertex is a component.
|
IContext<T> |
getCurrentCache()
Returns the current cache.
|
T |
getHolder(T attribute,
Serializable value,
T... targets)
Returns if exists the holder of this (meta) vertex.
|
T |
getHolder(T attribute,
T... targets)
Returns if exists the holder of this (meta) vertex.
|
Snapshot<T> |
getHolders(T attribute)
Returns the holders of this vertex that are instances of the specified
attribute . |
Snapshot<T> |
getHolders(T attribute,
int pos)
Returns the holders of this vertex that are instances of the specified attribute and for which this vertex is in the specified position in the components of these holders.
|
Snapshot<T> |
getHolders(T attribute,
Serializable value,
T... targets)
Returns the holders of this vertex that are instances of the specified attribute and for which this vertex is in the specified position in the components of these holders.
|
Snapshot<T> |
getHolders(T attribute,
T... targets)
Returns the holders of this vertex that are instances of the specified attribute and for which this vertex is in the specified position in the components of these holders.
|
T |
getInheriting(Serializable value,
T... components)
Return vertex that have this vertex as super.
|
T |
getInheriting(T... components)
Return vertex that have this vertex as super.
|
Snapshot<T> |
getInheritings()
Returns vertices that have this vertex as super.
|
Snapshot<T> |
getInheritings(Serializable value,
T... components)
Returns vertices that have this vertex as super.
|
Snapshot<T> |
getInheritings(T... components)
Returns vertices that have this vertex as super.
|
T |
getInstance(List<T> overrides,
Serializable value,
T... components)
Returns if exists an instance of this (meta) vertex.
|
T |
getInstance(Serializable value,
T... components)
Returns if exists an instance of this (meta) vertex.
|
T |
getInstance(T... components)
Returns if exists an instance of this (meta) vertex.
|
T |
getInstance(T override,
Serializable value,
T... components)
Returns if exists an instance of this (meta) vertex.
|
Snapshot<T> |
getInstances()
Returns vertices that have this vertex as meta.
|
Snapshot<T> |
getInstances(List<T> overrides,
Serializable value,
T... components)
Returns vertices that have this vertex as meta.
|
Snapshot<T> |
getInstances(Serializable value,
T... components)
Returns vertices that have this vertex as meta.
|
Snapshot<T> |
getInstances(T... components)
Returns vertices that have this vertex as meta.
|
Snapshot<T> |
getInstances(T override,
Serializable value,
T... components)
Returns vertices that have this vertex as meta.
|
Class<? extends Serializable> |
getInstanceValueClassConstraint()
Get the
Class value constraint of this vertex. |
Class<? extends InstanceValueGenerator.ValueGenerator> |
getInstanceValueGenerator()
Get the
Class value generator of this vertex. |
T |
getKey(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos)
Returns the key for the property at the position
|
int |
getLevel()
Returns the meta level of this vertex.
|
T |
getLink(T relation,
Serializable value,
T... targets)
Returns if exists the link of this (meta) vertex.
|
T |
getLink(T relation,
T... targets)
Returns if exists the link of this (meta) vertex.
|
Snapshot<T> |
getLinks(T relation)
Returns the links of this vertex that are instances of the specified
relation . |
Snapshot<T> |
getLinks(T relation,
int pos)
Returns the links of this vertex that are instances of the specified
relation and for which this vertex is in the specified position in the components of these links. |
Snapshot<T> |
getLinks(T relation,
Serializable value,
T... targets)
Returns the links of this vertex that are instances of the specified
relation and for which this vertex is in the specified position in the components of these links. |
Snapshot<T> |
getLinks(T relation,
T... targets)
Returns the links of this vertex that are instances of the specified
relation and for which this vertex is in the specified position in the components of these links. |
T |
getRelation(Serializable value,
T... targets)
Returns if exists the relation of this (meta) vertex.
|
T |
getRelation(T... targets)
Returns if exists the relation of this (meta) vertex.
|
Snapshot<T> |
getRelations(int pos)
Returns the relations of this vertex (directly if this vertex is a type, the relations of its type if this vertex is an instance) for which this vertex is in the specified position in their components.
|
Snapshot<T> |
getRelations(Serializable value,
T... targets)
Returns the relations of this vertex that inherit from the specified
relation . |
Snapshot<T> |
getRelations(T... targets)
Returns the relations of this vertex that inherit from the specified
relation . |
Snapshot<T> |
getRelations(T relation)
Returns the relations of this vertex that inherit from the specified
relation . |
IRoot<T> |
getRoot()
Returns the signature of the root of the graph.
|
T |
getSubInheriting(Serializable value,
T... components)
Returns vertex that inherit from this vertex.
|
T |
getSubInheriting(T... components)
Returns vertex that inherit from this vertex.
|
Snapshot<T> |
getSubInheritings()
Returns vertices that inherit from this vertex.
|
Snapshot<T> |
getSubInheritings(Serializable value,
T... components)
Returns vertices that inherit from this vertex.
|
Snapshot<T> |
getSubInheritings(T... components)
Returns vertices that inherit from this vertex.
|
T |
getSubInstance(List<T> overrides,
Serializable value,
T... components)
Return vertex that are instances of this vertex.
|
T |
getSubInstance(Serializable value,
T... components)
Return vertex that are instances of this vertex.
|
T |
getSubInstance(T... components)
Return vertex that are instances of this vertex.
|
T |
getSubInstance(T override,
Serializable value,
T... components)
Return vertex that are instances of this vertex.
|
Snapshot<T> |
getSubInstances()
Returns vertices that are instances of this vertex.
|
Snapshot<T> |
getSubInstances(List<T> overrides,
Serializable value,
T... components)
Returns vertices that are instances of this vertex.
|
Snapshot<T> |
getSubInstances(Serializable value,
T... components)
Returns vertices that are instances of this vertex.
|
Snapshot<T> |
getSubInstances(T... components)
Returns vertices that are instances of this vertex.
|
Snapshot<T> |
getSubInstances(T override,
Serializable value,
T... components)
Returns vertices that are instances of this vertex.
|
Serializable |
getSystemPropertyValue(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos)
Returns the property value of this vertex for the specified system property and position.
|
T |
getTargetComponent()
Returns the component at the
TARGET position, that is to say the component at the position 1. |
T |
getTernaryComponent()
Returns the component at the
TERNARY position, that is to say the component at the position 2. |
Serializable |
getValue(T attribute,
Serializable value,
T... targets)
Return value for each holder that is instance of the specified
attribute and position and for which this vertex is in the specified position in its components. |
Serializable |
getValue(T attribute,
T... targets)
Return value for each holder that is instance of the specified
attribute and position and for which this vertex is in the specified position in its components. |
Snapshot<Serializable> |
getValues(T attribute,
int pos)
Returns values for each holder that is instance of the specified
attribute and position and for which this vertex is in the specified position in its components. |
Snapshot<Serializable> |
getValues(T attribute,
Serializable value,
T... targets)
Returns values for each holder that is instance of the specified
attribute and position and for which this vertex is in the specified position in its components. |
Snapshot<Serializable> |
getValues(T attribute,
T... targets)
Returns values for each holder that is instance of the specified
attribute and position and for which this vertex is in the specified position in its components. |
T |
hideValue()
Hide this vertex’s and its instances’ values in the reactor.
|
String |
info()
Returns a
String representation of this vertex in the format :
(meta)[supers]value[components]
|
boolean |
inheritsFrom(T superVertex)
Indicates whether this vertex "inherits from" another.
|
boolean |
isAlive()
Indicates whether this signature is alive.
|
boolean |
isAncestorOf(T dependency)
Indicates whether this vertex is ancestor of the specified dependency.
|
boolean |
isCascadeRemoveEnabled(int pos)
Indicates whether this vertex is cascade remove for the specified position.
|
boolean |
isCompositeOf(T vertex)
Indicates whether this vertex has a component that is a specialization of
vertex . |
boolean |
isConcrete()
Indicates if the meta level of this vertex is
CONCRETE . |
boolean |
isDirectAncestorOf(T vertex) |
boolean |
isInheritanceEnabled()
Indicates whether this vertex is heritable.
|
boolean |
isInstanceOf(T metaVertex)
Indicates whether this vertex "is instance of" another.
|
boolean |
isInstanceValueHashed()
Indicates whether this vertex’s instances values are hashes.
|
boolean |
isMeta()
Indicates if the meta level of this vertex is
META . |
boolean |
isPropertyConstraintEnabled()
Indicates whether this vertex is property constraint.
|
boolean |
isReferentialIntegrityEnabled(int pos)
Indicates whether this vertex is referential integrity for the specified position.
|
boolean |
isRequiredConstraintEnabled(int pos)
Indicates whether this vertex is required constraint for the specified position.
|
boolean |
isRoot()
Indicates whether this vertex is the root of the graph.
|
boolean |
isSingularConstraintEnabled(int pos)
Indicates whether this vertex is singular constraint for the specified position.
|
boolean |
isSpecializationOf(T vertex)
Indicates whether this vertex "inherits from" or "is instance of" or "is instance of instance of" another.
|
boolean |
isStructural()
Indicates if the meta level of this vertex is
STRUCTURAL . |
boolean |
isSystem()
Indicates whether this signature is system.
|
boolean |
isSystemPropertyEnabled(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos)
Indicates whether this vertex is enabled for the specified boolean system property and position.
|
boolean |
isUniqueValueEnabled()
Indicates whether this vertex is unique value constraint.
|
boolean |
isValueHidden()
Indicates whether this vertex’s and its instances’ values should be shown by the reactor.
|
void |
remove()
Removes this vertex.
|
T |
setAttribute(List<T> overrides,
Serializable value,
T... targets)
Returns a new or the existing attribute on this type that satisfies the specified
overrides , value and targets . |
T |
setAttribute(Serializable value,
T... targets)
Returns a new or the existing attribute on this type that satisfies the specified
value and targets . |
T |
setAttribute(T override,
Serializable value,
T... targets)
Returns a new or the existing attribute on this type that satisfies the specified
override , value and targets . |
T |
setHolder(T attribute,
List<T> overrides,
Serializable value,
T... targets)
Returns a new or the existing holder on this type that satisfies the specified
overrides , value and targets . |
T |
setHolder(T attribute,
Serializable value,
T... targets)
Returns a new or the existing holder on this type that satisfies the specified
overrides , value and targets . |
T |
setHolder(T attribute,
T override,
Serializable value,
T... targets)
Returns a new or the existing holder on this type that satisfies the specified
overrides , value and targets . |
T |
setInstance(List<T> overrides,
Serializable value,
T... components)
Returns an existing or a new instance of this type that satisfies the specified
overrides , value and components . |
T |
setInstance(Serializable value,
T... components)
Returns an existing or a new instance of this type that satisfies the specified
value and components . |
T |
setInstance(T override,
Serializable value,
T... components)
Returns an existing or a new instance of this type that satisfies the specified
override , value and components . |
T |
setInstanceValueClassConstraint(Class<? extends Serializable> constraintClass)
Set the
Class value constraint of this vertex. |
T |
setInstanceValueGenerator(Class<? extends InstanceValueGenerator.ValueGenerator> instanceValueGeneratorClass)
Set the
Class value generator of this vertex. |
T |
setLink(T relation,
List<T> overrides,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing link on this type that satisfies the specified
overrides , value , firstTarget and otherTargets . |
T |
setLink(T relation,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing link on this type that satisfies the specified
overrides , value , firstTarget and otherTargets . |
T |
setLink(T relation,
T override,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing link on this type that satisfies the specified
override , value , firstTarget and otherTargets . |
T |
setRelation(List<T> overrides,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing relation on this type that satisfies the specified
overrides , value , firstTarget and otherTargets . |
T |
setRelation(Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing relation on this type that satisfies the specified
value , firstTarget and otherTargets . |
T |
setRelation(T override,
Serializable value,
T firstTarget,
T... otherTargets)
Returns a new or the existing relation on this type that satisfies the specified
override , value , firstTarget and otherTargets . |
T |
setSystemPropertyValue(Class<? extends IGeneric.SystemProperty> propertyClass,
int pos,
Serializable value,
T... targets)
Set the property value of this vertex for the specified system property, position and
targets . |
void |
traverse(IGeneric.Visitor<T> visitor)
Traverse the Tree.
|
T |
unhideValue()
Show this vertex’s and its instances’ values in the reactor.
|
T |
update(List<T> overrides,
Serializable newValue,
T... newComponents)
Update this Generic with the specified
overrides , newValue and newComponents . |
T |
update(Serializable newValue,
T... newComponents)
Update this Generic with the specified
newValue and newComponents . |
T |
update(T override,
Serializable newValue,
T... newComponents)
Update this Generic with the specified
override , newValue and newComponents . |
T |
updateComponent(T newTargetComponent,
int pos)
Update a component of this Generic with the specified
newTargetComponent . |
T |
updateComponents(T... newComponents)
Update the components of this Generic with the specified
newComponents . |
T |
updateSupers(T... overrides)
Update the supers of this Generic with the specified
overrides . |
T |
updateValue(Serializable newValue)
Update this Generic with the specified
newValue . |
getBirthTs, getComponents, getMeta, getSupers, getTs, getValue
boolean isRoot()
true
if this signature is the root of the graph, false
otherwise.IRoot<T> getRoot()
boolean isAlive()
true
if this signature is alive, false
otherwise.boolean isSystem()
true
if this signature is system, false
otherwise.T[] coerceToTArray(Object... array)
T
implementation for passing safe varags parameter and avoid heap pollution.array
- array of object.T[] addThisToTargets(T... targets)
T
implementation with this
in first position and targets
after.targets
- an array of targets stored in an objects arrayT
implementation augmented of this Vertex in first position.T[] addThisToTargets(T firstTarget, T... otherTargets)
T
implementation with this
in first position, firstTarget
in second position and otherTargets
after.firstTarget
- the first target.otherTargets
- an array of targets stored in an objects array.T
implementation augmented of this Vertex in first position, firstTarget
in second and then otherTargets
.int getLevel()
META
level, 1 for STRUCTURAL
and 2 for CONCRETE
.boolean isMeta()
META
.true
if the meta level of this vertex is 0, false
otherwise.boolean isStructural()
STRUCTURAL
.true
if the meta level of this vertex is 1, false
otherwise.boolean isConcrete()
CONCRETE
.true
if the meta level of this vertex is 2, false
otherwise.boolean inheritsFrom(T superVertex)
superVertex
- the vertex reference to be tested for inheritance.true
if this vertex inherits from superVertex
, false
otherwise.boolean isInstanceOf(T metaVertex)
metaVertex
- the vertex reference to be tested for instantiation.true
if this vertex is instance of metaVertex
, false
otherwise.boolean isSpecializationOf(T vertex)
vertex
- the vertex reference to be tested for specialization.true
if this vertex is a specialization of vertex
, false
otherwise.T getAttribute(Serializable value, T... targets)
value
and targets
.value
- the value of returned attribute.targets
- the targets of returned attribute.null
otherwise.T getAttribute(T... targets)
targets
.targets
- the targets of returned attribute.null
otherwise.T getHolder(T attribute, Serializable value, T... targets)
attribute
, value
and targets
.attribute
- the attribute from which retrieve the holder.value
- the value of returned holder.targets
- the targets of returned holder.null
otherwise.T getRelation(Serializable value, T... targets)
value
and targets
.value
- the value of returned relation.targets
- the targets of returned relation.null
otherwise.T getRelation(T... targets)
targets
.targets
- the targets of returned relation.null
otherwise.T getLink(T relation, Serializable value, T... targets)
relation
, value
and targets
.relation
- the relation from which retrieve the link.value
- the value of returned link.targets
- the targets of returned link.null
otherwise.T getHolder(T attribute, T... targets)
attribute
and targets
.attribute
- the attribute from which retrieve the holder.targets
- the targets of returned holder.null
otherwise.T getLink(T relation, T... targets)
relation
and targets
.relation
- the relation from which retrieve the link.targets
- the targets of returned link.null
otherwise.boolean isCompositeOf(T vertex)
vertex
.vertex
- the vertex reference to be tested for attribution.true
if this vertex has a component that is a specialization of vertex
.Snapshot<T> getAttributes()
targets
.Snapshot<T> getAttributes(T... targets)
targets
.targets
- the targets of returned attribute.Snapshot<T> getAttributes(int pos)
pos
- the expected position of this vertex in the components of these attributes.Snapshot<T> getAttributes(T attribute)
attribute
.attribute
- the attribute from which the returned attributes inheritSnapshot<T> getAttributes(Serializable value, T... targets)
value
and targets
.value
- the value of returned attribute.targets
- the targets of returned attribute.Snapshot<T> getHolders(T attribute)
attribute
.attribute
- the attribute of which the returned holders are instances.Snapshot<T> getHolders(T attribute, int pos)
attribute
- the attribute of which the returned holders are instances.pos
- the expected position of this vertex in the components of these holders.attribute
and position
.Snapshot<T> getHolders(T attribute, Serializable value, T... targets)
value
and targets
.attribute
- the attribute of which the returned holders are instances.value
- the value of returned holders.targets
- the targets of returned holders.attribute
and position
.Snapshot<T> getHolders(T attribute, T... targets)
targets
.attribute
- the attribute of which the returned holders are instances.targets
- the targets of returned holders.attribute
and position
.Snapshot<T> getRelations(T... targets)
relation
. targets
.targets
- the targets of returned relations.Snapshot<T> getRelations(int pos)
pos
- the expected position of this vertex in the components of these relations.Snapshot<T> getRelations(T relation)
relation
.relation
- the relation from which the returned relations inherit.Snapshot<T> getRelations(Serializable value, T... targets)
relation
. value
and targets
.value
- the value of returned relations.targets
- the targets of returned relations.Snapshot<T> getLinks(T relation)
relation
.relation
- the relation of which the returned links are instances.Snapshot<T> getLinks(T relation, int pos)
relation
and for which this vertex is in the specified position in the components of these links.relation
- the relation of which the returned links are instances.pos
- the expected position of this vertex in the components of these links.relation
and position
.Snapshot<T> getLinks(T relation, Serializable value, T... targets)
relation
and for which this vertex is in the specified position in the components of these links.value
and targets
.relation
- the relation of which the returned links are instances.value
- the value of returned links.targets
- the targets of returned links.relation
and position
.Snapshot<T> getLinks(T relation, T... targets)
relation
and for which this vertex is in the specified position in the components of these links.targets
.relation
- the relation of which the returned links are instances.targets
- the targets of returned links.relation
and position
.Serializable getValue(T attribute, T... targets)
attribute
and position and for which this vertex is in the specified position in its components. targets
.attribute
- the attribute of which value holders are instances.targets
- the targets of returned values.attribute
and position.Snapshot<Serializable> getValues(T attribute, T... targets)
attribute
and position and for which this vertex is in the specified position in its components. targets
.attribute
- the attribute of which value holders are instances.targets
- the targets of returned values.attribute
and position.Snapshot<Serializable> getValues(T attribute, int pos)
attribute
and position and for which this vertex is in the specified position in its components.attribute
- the attribute of which value holders are instances.pos
- the expected position of this vertex in the components of the holders.attribute
and position.Serializable getValue(T attribute, Serializable value, T... targets)
attribute
and position and for which this vertex is in the specified position in its components. value
and targets
.attribute
- the attribute of which value holders are instances.value
- the value of returned values.targets
- the targets of returned values.attribute
and position.Snapshot<Serializable> getValues(T attribute, Serializable value, T... targets)
attribute
and position and for which this vertex is in the specified position in its components. value
and targets
.attribute
- the attribute of which value holders are instances.value
- the value of returned values.targets
- the targets of returned values.attribute
and position.T getInstance(Serializable value, T... components)
value
and components
.value
- the value of returned vertex.components
- the components of returned vertex.null
otherwise.T getInstance(T... components)
components
.components
- the components of returned vertex.null
otherwise.T getInstance(T override, Serializable value, T... components)
super
, value
and components
.override
specified but can have more or more precise in an undefined order.value
- the value of returned vertex.override
- the override of returned vertex.components
- the components of returned vertex.null
otherwise.T getInstance(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.overrides
but can have more or more precise supers in an undefined order.overrides
- the list of overrides of returned vertex.value
- the value of returned vertex.components
- the components of returned vertex.null
otherwise.Snapshot<T> getInstances(Serializable value, T... components)
value
and components
.
To get all vertices that are instances of this vertex, consider getAllInstances()
.
value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getInstances()
To get all vertices that are instances of this vertex, consider getAllInstances()
.
Snapshot<T> getInstances(T... components)
components
.
To get all vertices that are instances of this vertex, consider getAllInstances()
.
components
- the targets of returned vertex.Snapshot<T> getInstances(T override, Serializable value, T... components)
override
, value
and components
.
To get all vertices that are instances of this vertex, consider getAllInstances()
.
override
- the override of returned vertex.value
- the value of returned vertex.components
- the components of returned vertex.Snapshot<T> getInstances(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.
To get all vertices that are instances of this vertex, consider getAllInstances()
.
overrides
- the overrides of returned vertex.value
- the value of returned vertex.components
- the components of returned vertex.T getSubInstance(Serializable value, T... components)
value
and components
.value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getSubInstances(Serializable value, T... components)
value
and components
.value
- the value of returned vertex.components
- the targets of returned vertex.T getSubInstance(T... components)
components
.components
- the targets of returned vertex.Snapshot<T> getSubInstances(T... components)
components
.components
- the targets of returned vertex.Snapshot<T> getSubInstances()
T getSubInstance(T override, Serializable value, T... components)
override
, value
and components
.override
- the override of returned vertex.value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getSubInstances(T override, Serializable value, T... components)
override
, value
and components
.override
- the override of returned vertex.value
- the value of returned vertex.components
- the targets of returned vertex.T getSubInstance(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.overrides
- the overrides of returned vertex.value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getSubInstances(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.overrides
- the overrides of returned vertex.value
- the value of returned vertex.components
- the targets of returned vertex.T getInheriting(Serializable value, T... components)
value
and components
.
To get all vertices that inherit from this vertex, consider getAllInheritings()
.
value
- the value of returned vertex.components
- the targets of returned vertex.T getInheriting(T... components)
value
and components
.
To get all vertices that inherit from this vertex, consider getAllInheritings()
.
components
- the targets of returned vertex.Snapshot<T> getInheritings(Serializable value, T... components)
value
and components
.
To get all vertices that inherit from this vertex, consider getAllInheritings()
.
value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getInheritings(T... components)
components
.
To get all vertices that inherit from this vertex, consider getAllInheritings()
.
components
- the targets of returned vertex.Snapshot<T> getInheritings()
To get all vertices that inherit from this vertex, consider getAllInheritings()
.
T getSubInheriting(Serializable value, T... components)
value
and components
.value
- the value of returned vertex.components
- the targets of returned vertex.Snapshot<T> getSubInheritings(Serializable value, T... components)
value
and components
.value
- the value of returned vertex.components
- the targets of returned vertex.T getSubInheriting(T... components)
components
.components
- the targets of returned vertex.Snapshot<T> getSubInheritings(T... components)
components
.components
- the targets of returned vertex.Snapshot<T> getSubInheritings()
T getComposite(Serializable value)
value
.value
- the value of returned vertex.Snapshot<T> getComposites(Serializable value)
value
.value
- the value of returned vertex.Snapshot<T> getComposites()
boolean isDirectAncestorOf(T vertex)
boolean isAncestorOf(T dependency)
The ancestors of a node are recursively :
dependency
- the dependency of which this vertex is an ancestor.true
if this vertex is ancestor of the specified dependency, false
otherwise.String info()
String
representation of this vertex in the format :
(meta)[supers]value[components]
String
representation of this vertex.String detailedInfo()
String
detailed representation of this vertex.String
detailed representation of this vertex.Serializable getSystemPropertyValue(Class<? extends IGeneric.SystemProperty> propertyClass, int pos)
propertyClass
- the Class
of the property.pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.T setSystemPropertyValue(Class<? extends IGeneric.SystemProperty> propertyClass, int pos, Serializable value, T... targets)
targets
.propertyClass
- the Class
of the system property.pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.value
- the property value to set.targets
- the targets for the system property.this
.T enableSystemProperty(Class<? extends IGeneric.SystemProperty> propertyClass, int pos, T... targets)
targets
.propertyClass
- the Class
of the boolean system property.pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.targets
- the targets for the system property.this
.T disableSystemProperty(Class<? extends IGeneric.SystemProperty> propertyClass, int pos, T... targets)
targets
.propertyClass
- the Class
of the boolean system property.pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.targets
- the targets for the system property.this
.boolean isSystemPropertyEnabled(Class<? extends IGeneric.SystemProperty> propertyClass, int pos)
propertyClass
- the Class
of the boolean system property.pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.true
if this vertex is enabled for the specified boolean system property and position, false
otherwise.T enableReferentialIntegrity(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.T disableReferentialIntegrity(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.boolean isReferentialIntegrityEnabled(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.true
if this vertex is referential integrity, false
otherwise.T enableSingularConstraint(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.T disableSingularConstraint(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.boolean isSingularConstraintEnabled(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.true
if this vertex is singular constraint, false
otherwise.T enablePropertyConstraint()
this
.T disablePropertyConstraint()
this
.boolean isPropertyConstraintEnabled()
true
if this vertex is property constraint, false
otherwise.T enableUniqueValueConstraint()
this
.T disableUniqueValueConstraint()
this
.boolean isUniqueValueEnabled()
true
if this vertex is unique value constraint, false
otherwise.Class<? extends Serializable> getInstanceValueClassConstraint()
Class
value constraint of this vertex.Class
constraint.T setInstanceValueClassConstraint(Class<? extends Serializable> constraintClass)
Class
value constraint of this vertex.constraintClass
- the Class
value of the constraint.this
.Class<? extends InstanceValueGenerator.ValueGenerator> getInstanceValueGenerator()
Class
value generator of this vertex.Class
constraint.T setInstanceValueGenerator(Class<? extends InstanceValueGenerator.ValueGenerator> instanceValueGeneratorClass)
Class
value generator of this vertex.instanceValueGeneratorClass
- the Class
value of the generator for instance values.this
.T enableRequiredConstraint(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.T disableRequiredConstraint(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.boolean isRequiredConstraintEnabled(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.true
if this vertex is required constraint, false
otherwise.T enableCascadeRemove(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.T disableCascadeRemove(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.this
.boolean isCascadeRemoveEnabled(int pos)
pos
- the position of this vertex in components to consider for axed properties, for example : ApiStatics.NO_POSITION
, ApiStatics.BASE_POSITION
, ApiStatics.TARGET_POSITION
... Use ApiStatics.NO_POSITION
for no axed properties.true
if this vertex is cascade remove, false
otherwise.T enableInheritance()
this
.T disableInheritance()
this
.boolean isInheritanceEnabled()
true
if this vertex is heritable, false
otherwise.T enableHashedInstanceValue()
this
.T disableHashedInstanceValue()
this
.boolean isInstanceValueHashed()
true
if this vertex’s instances values are hashes, false
otherwise.T hideValue()
this
.T unhideValue()
this
.boolean isValueHidden()
true
if this vertex’s and its instances’ values should be shown, false
otherwise.void remove()
RollbackException
- if this vertex is not alive or the operation violates an integrity constraint.T addInstance(Serializable value, T... components)
value
and components
.value
- the expected value.components
- the expected component references.RollbackException
- if the instance already exists.T addInstance(T override, Serializable value, T... components)
override
, value
and components
.override
- a vertex reference from which the returned instance shall inherit.value
- the expected value.components
- the expected component references.T addInstance(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.overrides
- vertex references from which the returned instance shall inherit.value
- the expected value.components
- the expected component references.T setInstance(Serializable value, T... components)
value
and components
.value
- the expected value.components
- the expected component references.value
and components
.T setInstance(T override, Serializable value, T... components)
override
, value
and components
.override
- a vertex reference from which the returned instance shall inherit.value
- the expected value.components
- the expected component references.override
, value
and components
.T setInstance(List<T> overrides, Serializable value, T... components)
overrides
, value
and components
.overrides
- vertex references from which the returned instance shall inherit.value
- the expected value.components
- the expected component references.overrides
, value
and components
.void traverse(IGeneric.Visitor<T> visitor)
visitor
- The class Visitor
.T addAttribute(Serializable value, T... targets)
value
and targets
.value
- the expected value.targets
- the expected targets references.T addAttribute(T override, Serializable value, T... targets)
override
, value
and targets
.override
- a vertex reference from which the returned attribute shall inherit.value
- the expected value.targets
- the expected targets references.T addAttribute(List<T> overrides, Serializable value, T... targets)
overrides
, value
and targets
.overrides
- vertex references from which the returned attribute shall inherit.value
- the expected value.targets
- the expected targets references.T setAttribute(Serializable value, T... targets)
value
and targets
.value
- the expected value.targets
- the expected targets references.T setAttribute(T override, Serializable value, T... targets)
override
, value
and targets
.override
- a vertex reference from which the returned attribute inherits.value
- the expected value.targets
- the expected targets references.T setAttribute(List<T> overrides, Serializable value, T... targets)
overrides
, value
and targets
.overrides
- vertex references from which the returned attribute inherits.value
- the expected value.targets
- the expected targets references.T addHolder(T attribute, Serializable value, T... targets)
value
and targets
.attribute
- the attribute of which the result holder is instance.value
- the expected value.targets
- the expected targets references.T addHolder(T attribute, T override, Serializable value, T... targets)
override
, value
and targets
.attribute
- the attribute of which the result holder is instance.override
- a vertex reference from which the returned holder shall inherit.value
- the expected value.targets
- the expected targets references.T addHolder(T attribute, List<T> overrides, Serializable value, T... targets)
overrides
, value
and targets
.attribute
- the attribute of which the result holder is instance.overrides
- vertex references from which the returned holder shall inherit.value
- the expected value.targets
- the expected targets references.T setHolder(T attribute, Serializable value, T... targets)
overrides
, value
and targets
.attribute
- the attribute of which the result holder is instance.value
- the expected value.targets
- the expected targets references.T setHolder(T attribute, T override, Serializable value, T... targets)
overrides
, value
and targets
.attribute
- the attribute of which the result holder is instance.override
- vertex reference from which the returned attribute inherits.value
- the expected value.targets
- the expected targets references.T setHolder(T attribute, List<T> overrides, Serializable value, T... targets)
overrides
, value
and targets
.attribute
- the attribute of which the result holder is instance.overrides
- vertex references from which the returned attribute shall inherit.value
- the expected value.targets
- the expected targets references.T addRelation(Serializable value, T firstTarget, T... otherTargets)
value
, firstTarget
and otherTargets
.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T addRelation(T override, Serializable value, T firstTarget, T... otherTargets)
override
, value
, firstTarget
and otherTargets
.override
- a vertex reference from which the returned relation shall inherit.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T addRelation(List<T> overrides, Serializable value, T firstTarget, T... otherTargets)
overrides
, value
, firstTarget
and otherTargets
.overrides
- vertex references from which the returned relation shall inherit.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T setRelation(Serializable value, T firstTarget, T... otherTargets)
value
, firstTarget
and otherTargets
.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T setRelation(T override, Serializable value, T firstTarget, T... otherTargets)
override
, value
, firstTarget
and otherTargets
.override
- a vertex reference from which the returned relation inherits.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T setRelation(List<T> overrides, Serializable value, T firstTarget, T... otherTargets)
overrides
, value
, firstTarget
and otherTargets
.overrides
- vertex references from which the returned relation inherits.value
- the expected value.firstTarget
- the expected first target of the relation.otherTargets
- the expected other targets references.T addLink(T relation, Serializable value, T firstTarget, T... otherTargets)
value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T addLink(T relation, T override, Serializable value, T firstTarget, T... otherTargets)
override
, value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.override
- a vertex reference from which the returned link shall inherit.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T addLink(T relation, List<T> overrides, Serializable value, T firstTarget, T... otherTargets)
overrides
, value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.overrides
- vertex references from which the returned link shall inherit.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T setLink(T relation, Serializable value, T firstTarget, T... otherTargets)
overrides
, value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T setLink(T relation, T override, Serializable value, T firstTarget, T... otherTargets)
override
, value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.override
- vertex reference from which the returned relation inherits.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T setLink(T relation, List<T> overrides, Serializable value, T firstTarget, T... otherTargets)
overrides
, value
, firstTarget
and otherTargets
.relation
- the relation of which the result link is instance.overrides
- vertex references from which the returned relation shall inherit.value
- the expected value (can be null).firstTarget
- the expected first target.otherTargets
- the expected other targets references.T updateValue(Serializable newValue)
newValue
.newValue
- the new value of this Generic.T updateSupers(T... overrides)
overrides
.overrides
- the new overrides of this Generic.T updateComponent(T newTargetComponent, int pos)
newTargetComponent
.newTargetComponent
- the new target component of this Generic.pos
- the position of the new target component in componentsT updateComponents(T... newComponents)
newComponents
.newComponents
- the new components of this Generic.T update(List<T> overrides, Serializable newValue, T... newComponents)
overrides
, newValue
and newComponents
.overrides
- the new overrides of this Generic.newValue
- the new value of this Generic.newComponents
- the new components of this Generic.T update(T override, Serializable newValue, T... newComponents)
override
, newValue
and newComponents
.override
- the new override of this Generic.newValue
- the new value of this Generic.newComponents
- the new components of this Generic.T update(Serializable newValue, T... newComponents)
newValue
and newComponents
.newValue
- the new value of this Generic.newComponents
- the new components of this Generic.T getBaseComponent()
BASE
position, that is to say the component at the position 0.BASE
position.T getTargetComponent()
TARGET
position, that is to say the component at the position 1.TARGET
position.T getTernaryComponent()
TERNARY
position, that is to say the component at the position 2.TERNARY
position.T getComponent(int pos)
pos
- the position of the component to be returned.T getKey(Class<? extends IGeneric.SystemProperty> propertyClass, int pos)
propertyClass
- the Class
of the property.pos
- the position of the propertyCopyright © 2022. All rights reserved.