Class RelationImpl<S extends Resource,T extends Entity>

All Implemented Interfaces:
Serializable, Element, IdentifiableElement, RelationElement<S,T>, SchemaMixedElement, ERElement, ModelElement, Relation<S,T>
Direct Known Subclasses:
ConsistsOfImpl, IsRelatedToImpl

public abstract class RelationImpl<S extends Resource,T extends Entity> extends RelationElementImpl<S,T> implements Relation<S,T>
The default abstract implementation of the Relation interface.
Author:
Luca Frosini (ISTI - CNR)
See Also:
  • Field Details

    • supertypes

      protected List<String> supertypes
      The supertypes of the relation.
    • expectedtype

      protected String expectedtype
      The expected type of the relation.
    • contexts

      protected Map<UUID,String> contexts
      The contexts of the relation.
    • propagationConstraint

      protected PropagationConstraint propagationConstraint
      The propagation constraint of the relation.
    • additionalProperties

      protected Map<String,Object> additionalProperties
      The additional properties of the relation.
    • allowedAdditionalKeys

      protected final Set<String> allowedAdditionalKeys
      A set of keys that are allowed as additional properties, even if they start with '_' or '@'.
  • Constructor Details

    • RelationImpl

      protected RelationImpl()
      Default constructor.
    • RelationImpl

      protected RelationImpl(S source, T target, PropagationConstraint propagationConstraint)
      Constructs a new RelationImpl with the given source, target, and propagation constraint.
      Parameters:
      source - The source of the relation.
      target - The target of the relation.
      propagationConstraint - The propagation constraint of the relation.
  • Method Details