Class ServiceStandard

All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>

@Entity @VoDml(id="StandardsRegExt:ServiceStandard", role=objectType) public class ServiceStandard extends Standard implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
a description of a standard service protocol. This typically refers to an IVOA standard but is not limited to such. objectType: ServiceStandard
  • Field Details

    • interface_

      @VoDml(id="StandardsRegExt:ServiceStandard.interface", role=composition, type="VOResource:Interface", typeRole=objectType) protected List<Interface> interface_
      an abstract description of one of the interfaces defined by this service standard. This element can provide details about the interface that apply to all implementations. Each interface element should specify a role with a value starting with 'std:' or, if there is only one standard interface, is equal to 'std'. Applications that, for example, wish to build a GUI to the service on-the-fly would first access this generic description. Site-specific variations, such as supported optional arguments or site specific arguments, would be given in the actual implemented service description and overrides any common information found in this generic description. This generic interface description can be matched with the site-specific one using the role attribute. Even though the Interface type requires an accessURL child element, this element is intended to describe a service in the abstract--i.e. without reference to a particular installation of the service. Consequently, the accessURL may contain a bogus URL; applications should not expect it to be resolvable. composition interface : ( Multiplicity : 0..* )
  • Constructor Details

    • ServiceStandard

      public ServiceStandard()
      Creates a new ServiceStandard
    • ServiceStandard

      public ServiceStandard(List<Interface> interface_, List<EndorsedVersion> endorsedVersion, List<Schema> schema, String deprecated, List<StandardKey> key, List<Validation> validationLevel, String title, ShortName shortName, IdentifierURI identifier, List<String> altIdentifier, Curation curation, Content content, UTCTimestamp created, UTCTimestamp updated, Resource_status status, String version)
      full parameter constructor.
      Parameters:
      interface_ - an abstract description of one of the interfaces defined by this service standard. This element can provide details about the interface that apply to all implementations. Each interface element should specify a role with a value starting with 'std:' or, if there is only one standard interface, is equal to 'std'. Applications that, for example, wish to build a GUI to the service on-the-fly would first access this generic description. Site-specific variations, such as supported optional arguments or site specific arguments, would be given in the actual implemented service description and overrides any common information found in this generic description. This generic interface description can be matched with the site-specific one using the role attribute. Even though the Interface type requires an accessURL child element, this element is intended to describe a service in the abstract--i.e. without reference to a particular installation of the service. Consequently, the accessURL may contain a bogus URL; applications should not expect it to be resolvable.
      endorsedVersion - the version of the standard that is recommended for use. More than one version can be listed, indicating that any of these versions are recognized as acceptable for use.
      schema - a description and pointer to a schema document defined by this standard. This is most typically an XML Schema, but it need not be strictly.
      deprecated - when present, this element indicates that all versions of the standard are considered deprecated by the publisher. The value is a human-readable explanation for the designation. The explanation should indicate if another standard should be preferred.
      key - a defined key associated with this standard.
      validationLevel - A numeric grade describing the quality of the resource description, when applicable, to be used to indicate the confidence an end-user can put in the resource as part of a VO application or research study. See VOResource:Validation for an explanation of the allowed levels. Note that when this resource is a Service, this grade applies to the core set of metadata. Capability and interface metadata, as well as the compliance of the service with the interface standard, is rated by validationLevel tag in the capability element (see the VOResource:Service complex type).
      title - the full name given to the resource .
      shortName - A short name or abbreviation given to the resource. This name will be used where brief annotations for the resource name are required. Applications may use to refer to this resource in a compact display. One word or a few letters is recommended. No more than sixteen characters are allowed.
      identifier - Unambiguous reference to the resource conforming to the IVOA standard for identifiers .
      altIdentifier - A reference to this resource in a non-IVOA identifier scheme, e.g., DOI or bibcode. Always use the an URI scheme here, e.g., doi:10.1016/j.epsl.2011.11.037. For bibcodes, use a form like bibcode:2008ivoa.spec.0222P.
      curation - Information regarding the general curation of the resource .
      content - Information regarding the general content of the resource .
      created - The UTC date and time this resource metadata description was created. This timestamp must not be in the future. This time is not required to be accurate; it should be at least accurate to the day. Any non-significant time fields should be set to zero.
      updated - The UTC date this resource metadata description was last updated. This timestamp must not be in the future. This time is not required to be accurate; it should be at least accurate to the day. Any non-significant time fields should be set to zero.
      status - a tag indicating whether this resource is believed to be still actively maintained.
      version - The VOResource XML schema version against which this instance was written. Implementors should set this to the value of the version attribute of their schema's root (xs:schema) element. Clients may assume version 1.0 if this attribute is missing.
    • ServiceStandard

      public ServiceStandard(ServiceStandard other)
      Copy Constructor. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
    • ServiceStandard

      public ServiceStandard(Standard superinstance, List<Interface> interface_)
      Constructor from supertype instance.
      Parameters:
      superinstance - The supertype.
      interface_ - an abstract description of one of the interfaces defined by this service standard. This element can provide details about the interface that apply to all implementations. Each interface element should specify a role with a value starting with 'std:' or, if there is only one standard interface, is equal to 'std'. Applications that, for example, wish to build a GUI to the service on-the-fly would first access this generic description. Site-specific variations, such as supported optional arguments or site specific arguments, would be given in the actual implemented service description and overrides any common information found in this generic description. This generic interface description can be matched with the site-specific one using the role attribute. Even though the Interface type requires an accessURL child element, this element is intended to describe a service in the abstract--i.e. without reference to a particular installation of the service. Consequently, the accessURL may contain a bogus URL; applications should not expect it to be resolvable.
  • Method Details

    • copyMe

      public Resource copyMe()
      make a clone of the object taking into account current polymorhic type.
      Overrides:
      copyMe in class Standard
      Returns:
      the cloned object.
    • updateUsing

      public void updateUsing(ServiceStandard other)
      Update this object with the content of the given object. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
    • getInterface

      public List<Interface> getInterface()
      Returns interface composition as an immutable list.
      Returns:
      interface composition.
    • setInterface

      public void setInterface(List<Interface> pInterface)
      Defines whole interface composition.
      Parameters:
      pInterface - composition to set.
    • addToInterface

      public void addToInterface(Interface p)
      Add a org.ivoa.dm.registry.voresource.Interface to the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.Interface to add
    • removeFromInterface

      public void removeFromInterface(Interface p)
      Remove a org.ivoa.dm.registry.voresource.Interface from the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.Interface to remove
    • replaceInInterface

      public void replaceInInterface(Interface _p)
      update a org.ivoa.dm.registry.voresource.Interface in the composition.
      Parameters:
      _p - org.ivoa.dm.registry.voresource.Interface to update the match is done via the database key
    • createServiceStandard

      public static ServiceStandard createServiceStandard(Consumer<ServiceStandard.ServiceStandardBuilder> f)
      create a ServiceStandard in functional builder style.
      Parameters:
      f - the functional builder.
      Returns:
      an object initialized from the builder.
    • forceLoad

      public void forceLoad()
      Specified by:
      forceLoad in interface org.ivoa.vodml.jpa.JPAManipulations
      Overrides:
      forceLoad in class Standard
    • delete

      public void delete(jakarta.persistence.EntityManager em)
      Specified by:
      delete in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
      Overrides:
      delete in class Standard