Interface EntityElement

All Superinterfaces:
Element, IdentifiableElement, Serializable
All Known Subinterfaces:
Context, Entity, EntityType, Facet, FacetType, QueryTemplate, Resource, ResourceType
All Known Implementing Classes:
ContextImpl, DummyFacet, DummyResource, EntityElementImpl, EntityImpl, EntityTypeImpl, FacetImpl, FacetTypeImpl, QueryTemplateImpl, ResourceImpl, ResourceTypeImpl

@TypeMetadata(name="EntityElement", description="This is the base type for any EntityElement", version="1.0.0") @Change(version="1.0.0", description="First Version") public interface EntityElement extends Element, IdentifiableElement
The base interface for all entity elements in the Information System model.

This interface combines the Element and IdentifiableElement interfaces to provide a foundation for all identifiable entities. It is marked as abstract and serves as a common supertype for more specific entity types.

Author:
Luca Frosini (ISTI - CNR)
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    The name of the entity element type.

    Fields inherited from interface org.gcube.informationsystem.base.reference.Element

    DATETIME_PATTERN, TYPE_PROPERTY

    Fields inherited from interface org.gcube.informationsystem.base.reference.IdentifiableElement

    ID_PROPERTY, METADATA_PROPERTY
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the unique identifier (UUID) of the element.
    Returns the metadata associated with the element.
    void
    setID(UUID uuid)
    Sets the unique identifier (UUID) for the element.
    void
    Sets the metadata for the element.

    Methods inherited from interface org.gcube.informationsystem.base.reference.Element

    getTypeName
  • Field Details

  • Method Details

    • getID

      @ISProperty(name="id", description="This UUID is be used to identify the instance univocally.", readonly=true, mandatory=true, nullable=false) UUID getID()
      Returns the unique identifier (UUID) of the element.

      This UUID is used to uniquely identify the entity instance. It is read-only, mandatory, and cannot be null.

      Specified by:
      getID in interface IdentifiableElement
      Returns:
      The UUID of the element.
    • setID

      void setID(UUID uuid)
      Sets the unique identifier (UUID) for the element.
      Specified by:
      setID in interface IdentifiableElement
      Parameters:
      uuid - The UUID to set.
    • getMetadata

      @ISProperty(name="metadata", mandatory=true, nullable=false, description="Metadata associated with the instance that is automatically created/updated by the system.") Metadata getMetadata()
      Returns the metadata associated with the element.

      The metadata is included in JSON serialization only if it is not null.

      Metadata is automatically managed by the system and is mandatory.

      Specified by:
      getMetadata in interface IdentifiableElement
      Returns:
      The Metadata of the element, or null if none is set.
    • setMetadata

      void setMetadata(Metadata metadata)
      Sets the metadata for the element.
      Specified by:
      setMetadata in interface IdentifiableElement
      Parameters:
      metadata - The Metadata to associate with the element.