Interface ContactFacet

  • All Superinterfaces:
    org.gcube.informationsystem.base.reference.Element, org.gcube.informationsystem.model.reference.entities.Entity, org.gcube.informationsystem.base.reference.entities.EntityElement, org.gcube.informationsystem.model.reference.ERElement, org.gcube.informationsystem.model.reference.entities.Facet, org.gcube.informationsystem.base.reference.IdentifiableElement, org.gcube.informationsystem.model.reference.ModelElement, org.gcube.informationsystem.base.reference.SchemaMixedElement, Serializable
    All Known Implementing Classes:
    ContactFacetImpl

    @TypeMetadata(name="ContactFacet",
                  description="ContactFacet captures information on a point of contact for the resource, i.e., a person or a department serving as the coordinator or focal point  of information concerning the resource.",
                  version="1.1.0")
    @Change(version="1.1.0",description="Added id property and removed the mandatory constraint on the email property to provide more flexibility and comply with privacy regulations (e.g., GDPR).") @Change(version="1.0.0",description="First Version")
    public interface ContactFacet
    extends org.gcube.informationsystem.model.reference.entities.Facet
    ContactFacet captures information on a point of contact for the resource, i.e., a person or a department serving as the coordinator or focal point of information concerning the resource. https://wiki.gcube-system.org/gcube/GCube_Model#Contact_Facet
    Author:
    Luca Frosini (ISTI - CNR)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String EMAIL_PATTERN
      The pattern for email validation
      static String EMAIL_PROPERTY
      The name of 'eMail' property
      static String NAME
      The name associated with this facet
      static String VERSION
      The version associated with this facet
      • Fields inherited from interface org.gcube.informationsystem.base.reference.Element

        DATETIME_PATTERN, TYPE_PROPERTY
      • Fields inherited from interface org.gcube.informationsystem.model.reference.ERElement

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

        ID_PROPERTY, METADATA_PROPERTY
      • Fields inherited from interface org.gcube.informationsystem.model.reference.ModelElement

        EXPECTED_TYPE_PROPERTY, SUPERTYPES_PROPERTY
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      static ContactFacet getDefaultInstance()
      Returns a default instance of ContactFacet
      String getEMail()
      The email address of the point of contact.
      String getIdentifier()
      An identifier for the point of contact.
      String getMiddleName()
      The middle name of the point of contact.
      String getName()
      The first name of the point of contact.
      String getSurname()
      The surname of the point of contact.
      String getTitle()
      A name describing the profession or marital status of the point of contact.
      void setEMail​(String eMail)
      Sets the email address of the point of contact.
      void setIdentifier​(String identifier)
      Sets the identifier of the point of contact.
      void setMiddleName​(String middleName)
      Sets the middle name of the point of contact.
      void setName​(String name)
      Sets the first name of the point of contact.
      void setSurname​(String surname)
      Sets the surname of the point of contact.
      void setTitle​(String title)
      Sets the title of the point of contact.
      • Methods inherited from interface org.gcube.informationsystem.base.reference.Element

        getTypeName
      • Methods inherited from interface org.gcube.informationsystem.base.reference.entities.EntityElement

        getID, getMetadata, setID, setMetadata
      • Methods inherited from interface org.gcube.informationsystem.model.reference.ERElement

        getContexts
      • Methods inherited from interface org.gcube.informationsystem.model.reference.entities.Facet

        getAdditionalProperties, getAdditionalProperty, setAdditionalProperties, setAdditionalProperty
      • Methods inherited from interface org.gcube.informationsystem.model.reference.ModelElement

        getExpectedtype, getSupertypes
    • Method Detail

      • getDefaultInstance

        static ContactFacet getDefaultInstance()
        Returns a default instance of ContactFacet
        Returns:
        a default instance of ContactFacet
      • getIdentifier

        @ISProperty(description="An identifier for the point of contact.")
        String getIdentifier()
        An identifier for the point of contact.
        Returns:
        the identifier
      • setIdentifier

        void setIdentifier​(String identifier)
        Sets the identifier of the point of contact.
        Parameters:
        identifier - the identifier
      • getTitle

        @ISProperty(description="A name describing the profession or marital status of the point of contact. e.g., Dr, Mrs, Mr.")
        String getTitle()
        A name describing the profession or marital status of the point of contact. e.g., Dr, Mrs, Mr.
        Returns:
        the title
      • setTitle

        void setTitle​(String title)
        Sets the title of the point of contact.
        Parameters:
        title - the title
      • getName

        @ISProperty(description="First Name",
                    mandatory=true,
                    nullable=false)
        String getName()
        The first name of the point of contact.
        Returns:
        the name
      • setName

        void setName​(String name)
        Sets the first name of the point of contact.
        Parameters:
        name - the name
      • getMiddleName

        @ISProperty(description="Middle Name")
        String getMiddleName()
        The middle name of the point of contact.
        Returns:
        the middle name
      • setMiddleName

        void setMiddleName​(String middleName)
        Sets the middle name of the point of contact.
        Parameters:
        middleName - the middle name
      • getSurname

        @ISProperty(description="Surname",
                    mandatory=true,
                    nullable=false)
        String getSurname()
        The surname of the point of contact.
        Returns:
        the surname
      • setSurname

        void setSurname​(String surname)
        Sets the surname of the point of contact.
        Parameters:
        surname - the surname
      • getEMail

        @ISProperty(description="Email address",
                    name="eMail",
                    nullable=false,
                    regexpr="^[a-z0-9._%+-]{1,128}@[a-z0-9.-]{1,128}$")
        String getEMail()
        The email address of the point of contact.
        Returns:
        the email
      • setEMail

        void setEMail​(String eMail)
        Sets the email address of the point of contact.
        Parameters:
        eMail - the email