Class ParamHTTP
java.lang.Object
org.ivoa.dm.registry.voresource.Interface
org.ivoa.dm.registry.vodataservice.ParamHTTP
- All Implemented Interfaces:
 org.ivoa.vodml.jpa.JPAManipulations,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
@Entity
@VoDml(id="VODataService:ParamHTTP",
       role=objectType)
public class ParamHTTP
extends Interface
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
A service invoked via an HTTP Query (either Get or Post)
                          with a set of arguments consisting of keyword name-value pairs.
                        
                          Note that the URL for help with this service can be put into
                          the service/referenceURL element. 
 objectType:  ParamHTTP
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA builder class for ParamHTTP, mainly for use in the functional builder pattern. - 
Field Summary
FieldsModifier and TypeFieldDescriptionprotected List<InputParam>A description of a input parameter that can be provided as a name=value argument to the service.protected HTTPQueryType[]The type of HTTP request, either GET or POST.protected StringThe MIME media type of a document returned in the HTTP response.protected StringAn ampersand-delimited list of arguments that can be used to test this service interface; when provided as the input to this interface, it will produce a legal, non-null response.Fields inherited from class org.ivoa.dm.registry.voresource.Interface
_id, accessURL, mirrorURL, role, securityMethod, testQueryString, version - 
Constructor Summary
ConstructorsConstructorDescriptionCreates a new ParamHTTPParamHTTP(HTTPQueryType[] queryType, String resultType, List<InputParam> param, String testQuery, List<AccessURL> accessURL, List<MirrorURL> mirrorURL, List<SecurityMethod> securityMethod, String testQueryString, String version, String role) full parameter constructor.Copy Constructor.ParamHTTP(Interface superinstance, HTTPQueryType[] queryType, String resultType, List<InputParam> param, String testQuery) Constructor from supertype instance. - 
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a org.ivoa.dm.registry.vodataservice.InputParam to the composition.copyMe()make a clone of the object taking into account current polymorhic type.static ParamHTTPcreate a ParamHTTP in functional builder style.voiddelete(jakarta.persistence.EntityManager em) voidgetParam()Returns param composition as an immutable list.Returns queryType Attribute.Returns resultType Attribute.Returns testQuery Attribute.voidRemove a org.ivoa.dm.registry.vodataservice.InputParam from the composition.voidupdate a org.ivoa.dm.registry.vodataservice.InputParam in the composition.voidsetParam(List<InputParam> pParam) Defines whole param composition.voidsetQueryType(HTTPQueryType[] pQueryType) Set queryType Attribute.voidsetResultType(String pResultType) Set resultType Attribute.voidsetTestQuery(String pTestQuery) Set testQuery Attribute.voidupdateUsing(ParamHTTP other) Update this object with the content of the given object.withQueryType(HTTPQueryType[] pQueryType) fluent setter for queryType Attribute.withResultType(String pResultType) fluent setter for resultType Attribute.withTestQuery(String pTestQuery) fluent setter for testQuery Attribute.Methods inherited from class org.ivoa.dm.registry.voresource.Interface
addToAccessURL, addToMirrorURL, addToSecurityMethod, getAccessURL, getId, getMirrorURL, getRole, getSecurityMethod, getTestQueryString, getVersion, removeFromAccessURL, removeFromMirrorURL, removeFromSecurityMethod, replaceInAccessURL, replaceInMirrorURL, replaceInSecurityMethod, setAccessURL, setMirrorURL, setRole, setSecurityMethod, setTestQueryString, setVersion, updateUsing, withRole, withTestQueryString, withVersionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType
getId 
- 
Field Details
- 
queryType
@VoDml(id="VODataService:ParamHTTP.queryType", role=attribute, type="VODataService:HTTPQueryType", typeRole=enumeration) protected HTTPQueryType[] queryTypeThe type of HTTP request, either GET or POST. The service may indicate support for both GET and POST by providing 2 queryType elements, one with GET and one with POST. Since the IVOA standard DALI requires standard services to support both GET and POST, this piece of metadata is not useful in the description of standard DAL services and does not need to be given for those. : Attribute queryType : multiplicity 2 - 
resultType
@VoDml(id="VODataService:ParamHTTP.resultType", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String resultTypeThe MIME media type of a document returned in the HTTP response. : Attribute resultType : multiplicity 0..1 - 
param
@VoDml(id="VODataService:ParamHTTP.param", role=composition, type="VODataService:InputParam", typeRole=objectType) protected List<InputParam> paramA description of a input parameter that can be provided as a name=value argument to the service. composition param : ( Multiplicity : 0..* ) - 
testQuery
@VoDml(id="VODataService:ParamHTTP.testQuery", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String testQueryAn ampersand-delimited list of arguments that can be used to test this service interface; when provided as the input to this interface, it will produce a legal, non-null response. When the interface supports GET, then the full query URL is formed by the concatenation of the base URL (given by the accessURL) and the value given by this testQuery element. : Attribute testQuery : multiplicity 0..1 
 - 
 - 
Constructor Details
- 
ParamHTTP
public ParamHTTP()Creates a new ParamHTTP - 
ParamHTTP
public ParamHTTP(HTTPQueryType[] queryType, String resultType, List<InputParam> param, String testQuery, List<AccessURL> accessURL, List<MirrorURL> mirrorURL, List<SecurityMethod> securityMethod, String testQueryString, String version, String role) full parameter constructor.- Parameters:
 queryType- The type of HTTP request, either GET or POST. The service may indicate support for both GET and POST by providing 2 queryType elements, one with GET and one with POST. Since the IVOA standard DALI requires standard services to support both GET and POST, this piece of metadata is not useful in the description of standard DAL services and does not need to be given for those.resultType- The MIME media type of a document returned in the HTTP response.param- A description of a input parameter that can be provided as a name=value argument to the service.testQuery- An ampersand-delimited list of arguments that can be used to test this service interface; when provided as the input to this interface, it will produce a legal, non-null response. When the interface supports GET, then the full query URL is formed by the concatenation of the base URL (given by the accessURL) and the value given by this testQuery element.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.
 - 
ParamHTTP
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
 other- the object to be copied.
 - 
ParamHTTP
public ParamHTTP(Interface superinstance, HTTPQueryType[] queryType, String resultType, List<InputParam> param, String testQuery) Constructor from supertype instance.- Parameters:
 superinstance- The supertype.queryType- The type of HTTP request, either GET or POST. The service may indicate support for both GET and POST by providing 2 queryType elements, one with GET and one with POST. Since the IVOA standard DALI requires standard services to support both GET and POST, this piece of metadata is not useful in the description of standard DAL services and does not need to be given for those.resultType- The MIME media type of a document returned in the HTTP response.param- A description of a input parameter that can be provided as a name=value argument to the service.testQuery- An ampersand-delimited list of arguments that can be used to test this service interface; when provided as the input to this interface, it will produce a legal, non-null response. When the interface supports GET, then the full query URL is formed by the concatenation of the base URL (given by the accessURL) and the value given by this testQuery element.
 
 - 
 - 
Method Details
- 
copyMe
make a clone of the object taking into account current polymorhic type. - 
updateUsing
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.
 - 
getQueryType
Returns queryType Attribute.- Returns:
 - queryType Attribute
 
 - 
setQueryType
Set queryType Attribute.- Parameters:
 pQueryType- value to set
 - 
withQueryType
fluent setter for queryType Attribute.- Parameters:
 pQueryType- value to set- Returns:
 - ParamHTTP
 
 - 
getResultType
Returns resultType Attribute.- Returns:
 - resultType Attribute
 
 - 
setResultType
Set resultType Attribute.- Parameters:
 pResultType- value to set
 - 
withResultType
fluent setter for resultType Attribute.- Parameters:
 pResultType- value to set- Returns:
 - ParamHTTP
 
 - 
getParam
Returns param composition as an immutable list.- Returns:
 - param composition.
 
 - 
setParam
Defines whole param composition.- Parameters:
 pParam- composition to set.
 - 
addToParam
Add a org.ivoa.dm.registry.vodataservice.InputParam to the composition.- Parameters:
 p- org.ivoa.dm.registry.vodataservice.InputParam to add
 - 
removeFromParam
Remove a org.ivoa.dm.registry.vodataservice.InputParam from the composition.- Parameters:
 p- org.ivoa.dm.registry.vodataservice.InputParam to remove
 - 
replaceInParam
update a org.ivoa.dm.registry.vodataservice.InputParam in the composition.- Parameters:
 _p- org.ivoa.dm.registry.vodataservice.InputParam to update the match is done via the database key
 - 
getTestQuery
Returns testQuery Attribute.- Returns:
 - testQuery Attribute
 
 - 
setTestQuery
Set testQuery Attribute.- Parameters:
 pTestQuery- value to set
 - 
withTestQuery
fluent setter for testQuery Attribute.- Parameters:
 pTestQuery- value to set- Returns:
 - ParamHTTP
 
 - 
createParamHTTP
create a ParamHTTP in functional builder style.- Parameters:
 f- the functional builder.- Returns:
 - an object initialized from the builder.
 
 - 
forceLoad
public void forceLoad() - 
delete
public void delete(jakarta.persistence.EntityManager em) - Specified by:
 deletein interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
 
 -