Class Interface

java.lang.Object
org.ivoa.dm.registry.voresource.Interface
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
Direct Known Subclasses:
ParamHTTP, WebBrowser, WebService

@Entity @VoDml(id="VOResource:Interface", role=objectType) public abstract class Interface extends Object implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
A description of a service interface. Since this type is abstract, one must use an Interface subclass to describe an actual interface. Additional interface subtypes (beyond WebService and WebBrowser) are defined in the VODataService schema. objectType: Interface
  • Field Details

    • _id

      protected Long _id
      inserted database key
    • accessURL

      @VoDml(id="VOResource:Interface.accessURL", role=composition, type="VOResource:AccessURL", typeRole=objectType) protected List<AccessURL> accessURL
      The URL (or base URL) that a client uses to access the service. How this URL is to be interpreted and used depends on the specific Interface subclass Although the schema allows multiple occurrences of accessURL, multiple accessURLs are deprecated. Each interface should have exactly one access URL. Where an interface has several mirrors, the accessURL should reflect the “primary” (fastest, best-connected, best-maintained) site, the one that non-sophisticated clients will go to. Additional accessURLs should be put into mirrorURLs. Advanced clients can retrieve the mirrorURLs and empirically determine interfaces closer to their network location. composition accessURL : ( Multiplicity : 1..* )
    • mirrorURL

      @VoDml(id="VOResource:Interface.mirrorURL", role=composition, type="VOResource:MirrorURL", typeRole=objectType) protected List<MirrorURL> mirrorURL
      A (base) URL of a mirror of this interface. As with accessURL, how this URL is to be interpreted and used depends on the specific Interface subclass This is intended exclusively for true mirrors, i.e., interfaces that are functionally identical to the original interface and that are operated by the same publisher. Other arrangements should be represented as separate services linked by mirror-of relationships. composition mirrorURL : ( Multiplicity : 0..* )
    • securityMethod

      @VoDml(id="VOResource:Interface.securityMethod", role=composition, type="VOResource:SecurityMethod", typeRole=objectType) protected List<SecurityMethod> securityMethod
      The mechanism the client must employ to authenticate to the service. Services not requiring authentication must provide at least one interface definition without a securityMethod defined. composition securityMethod : ( Multiplicity : 0..* )
    • testQueryString

      @VoDml(id="VOResource:Interface.testQueryString", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String testQueryString
      Test data for exercising the service. This contains data that can be passed to the interface to retrieve a non-empty result. This can be used by validators within test suites. Exactly how agents should use the data contained in the testQueryString depends on the concrete interface class. For interfaces employing the HTTP GET method, however, this will typically be urlencoded parameters (as for the application/x-www-form-urlencoded media type). : Attribute testQueryString : multiplicity 0..1
    • version

      @VoDml(id="VOResource:Interface.version", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String version
      The version of a standard interface specification that this interface complies with. Most VO standards indicate the version in the standardID attribute of the capability. For these standards, the version attribute should not be used. : Attribute version : multiplicity 1
    • role

      @VoDml(id="VOResource:Interface.role", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String role
      A tag name that identifies the role the interface plays in the particular capability. If the value is equal to 'std' or begins with 'std:', then the interface refers to a standard interface defined by the standard referred to by the capability's standardID attribute. For an interface complying with some registered standard (i.e. has a legal standardID), the role can be matched against interface roles enumerated in standard resource record. The interface descriptions in the standard record can provide default descriptions so that such details need not be repeated here. : Attribute role : multiplicity 1
  • Constructor Details

    • Interface

      public Interface()
      Creates a new Interface
    • Interface

      public Interface(List<AccessURL> accessURL, List<MirrorURL> mirrorURL, List<SecurityMethod> securityMethod, String testQueryString, String version, String role)
      full parameter constructor.
      Parameters:
      accessURL - The URL (or base URL) that a client uses to access the service. How this URL is to be interpreted and used depends on the specific Interface subclass Although the schema allows multiple occurrences of accessURL, multiple accessURLs are deprecated. Each interface should have exactly one access URL. Where an interface has several mirrors, the accessURL should reflect the “primary” (fastest, best-connected, best-maintained) site, the one that non-sophisticated clients will go to. Additional accessURLs should be put into mirrorURLs. Advanced clients can retrieve the mirrorURLs and empirically determine interfaces closer to their network location.
      mirrorURL - A (base) URL of a mirror of this interface. As with accessURL, how this URL is to be interpreted and used depends on the specific Interface subclass This is intended exclusively for true mirrors, i.e., interfaces that are functionally identical to the original interface and that are operated by the same publisher. Other arrangements should be represented as separate services linked by mirror-of relationships.
      securityMethod - The mechanism the client must employ to authenticate to the service. Services not requiring authentication must provide at least one interface definition without a securityMethod defined.
      testQueryString - Test data for exercising the service. This contains data that can be passed to the interface to retrieve a non-empty result. This can be used by validators within test suites. Exactly how agents should use the data contained in the testQueryString depends on the concrete interface class. For interfaces employing the HTTP GET method, however, this will typically be urlencoded parameters (as for the application/x-www-form-urlencoded media type).
      version - The version of a standard interface specification that this interface complies with. Most VO standards indicate the version in the standardID attribute of the capability. For these standards, the version attribute should not be used.
      role - A tag name that identifies the role the interface plays in the particular capability. If the value is equal to 'std' or begins with 'std:', then the interface refers to a standard interface defined by the standard referred to by the capability's standardID attribute. For an interface complying with some registered standard (i.e. has a legal standardID), the role can be matched against interface roles enumerated in standard resource record. The interface descriptions in the standard record can provide default descriptions so that such details need not be repeated here.
    • Interface

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

    • getId

      public Long getId()
      Specified by:
      getId in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
      Returns:
      the id
    • copyMe

      public abstract Interface copyMe()
      make a clone of the object taking into account current polymorhic type.
      Returns:
      the cloned object.
    • updateUsing

      public void updateUsing(Interface 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.
    • getAccessURL

      public List<AccessURL> getAccessURL()
      Returns accessURL composition as an immutable list.
      Returns:
      accessURL composition.
    • setAccessURL

      public void setAccessURL(List<AccessURL> pAccessURL)
      Defines whole accessURL composition.
      Parameters:
      pAccessURL - composition to set.
    • addToAccessURL

      public void addToAccessURL(AccessURL p)
      Add a org.ivoa.dm.registry.voresource.AccessURL to the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.AccessURL to add
    • removeFromAccessURL

      public void removeFromAccessURL(AccessURL p)
      Remove a org.ivoa.dm.registry.voresource.AccessURL from the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.AccessURL to remove
    • replaceInAccessURL

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

      public List<MirrorURL> getMirrorURL()
      Returns mirrorURL composition as an immutable list.
      Returns:
      mirrorURL composition.
    • setMirrorURL

      public void setMirrorURL(List<MirrorURL> pMirrorURL)
      Defines whole mirrorURL composition.
      Parameters:
      pMirrorURL - composition to set.
    • addToMirrorURL

      public void addToMirrorURL(MirrorURL p)
      Add a org.ivoa.dm.registry.voresource.MirrorURL to the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.MirrorURL to add
    • removeFromMirrorURL

      public void removeFromMirrorURL(MirrorURL p)
      Remove a org.ivoa.dm.registry.voresource.MirrorURL from the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.MirrorURL to remove
    • replaceInMirrorURL

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

      public List<SecurityMethod> getSecurityMethod()
      Returns securityMethod composition as an immutable list.
      Returns:
      securityMethod composition.
    • setSecurityMethod

      public void setSecurityMethod(List<SecurityMethod> pSecurityMethod)
      Defines whole securityMethod composition.
      Parameters:
      pSecurityMethod - composition to set.
    • addToSecurityMethod

      public void addToSecurityMethod(SecurityMethod p)
      Add a org.ivoa.dm.registry.voresource.SecurityMethod to the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.SecurityMethod to add
    • removeFromSecurityMethod

      public void removeFromSecurityMethod(SecurityMethod p)
      Remove a org.ivoa.dm.registry.voresource.SecurityMethod from the composition.
      Parameters:
      p - org.ivoa.dm.registry.voresource.SecurityMethod to remove
    • replaceInSecurityMethod

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

      public String getTestQueryString()
      Returns testQueryString Attribute.
      Returns:
      testQueryString Attribute
    • setTestQueryString

      public void setTestQueryString(String pTestQueryString)
      Set testQueryString Attribute.
      Parameters:
      pTestQueryString - value to set
    • withTestQueryString

      public Interface withTestQueryString(String pTestQueryString)
      fluent setter for testQueryString Attribute.
      Parameters:
      pTestQueryString - value to set
      Returns:
      Interface
    • getVersion

      public String getVersion()
      Returns version Attribute.
      Returns:
      version Attribute
    • setVersion

      public void setVersion(String pVersion)
      Set version Attribute.
      Parameters:
      pVersion - value to set
    • withVersion

      public Interface withVersion(String pVersion)
      fluent setter for version Attribute.
      Parameters:
      pVersion - value to set
      Returns:
      Interface
    • getRole

      public String getRole()
      Returns role Attribute.
      Returns:
      role Attribute
    • setRole

      public void setRole(String pRole)
      Set role Attribute.
      Parameters:
      pRole - value to set
    • withRole

      public Interface withRole(String pRole)
      fluent setter for role Attribute.
      Parameters:
      pRole - value to set
      Returns:
      Interface
    • forceLoad

      public void forceLoad()
      Specified by:
      forceLoad in interface org.ivoa.vodml.jpa.JPAManipulations