public abstract class RegistryProtocol
extends java.lang.Object
Modifier and Type | Field | Description |
---|---|---|
static RegistryProtocol[] |
PROTOCOLS |
Known protocols.
|
static RegistryProtocol |
REGTAP |
Protocol instance for Relational Registry 1.0.
|
static RegistryProtocol |
RI1 |
Protocol instance for Registry Interface 1.0.
|
Modifier | Constructor | Description |
---|---|---|
protected |
RegistryProtocol(java.lang.String shortName,
java.lang.String fullName,
java.lang.String[] dfltUrls) |
Constructor.
|
Modifier and Type | Method | Description |
---|---|---|
abstract RegistryQuery |
createIdListQuery(java.lang.String[] ivoids,
Capability capability,
java.net.URL regUrl) |
Constructs a registry query that gets results for a list of
given IVO ID strings, optionally restricted by a given capability.
|
abstract RegistryQuery |
createKeywordQuery(java.lang.String[] keywords,
ResourceField[] rfs,
boolean isOr,
Capability capability,
java.net.URL regUrl) |
Constructs a registry query that gets results for resources with
a match for one or all of a given set of keywords found in
a selection of resource fields.
|
abstract java.lang.String[] |
discoverRegistryUrls(java.lang.String regUrl0) |
Searches a given registry to discover new endpoint URLs serving
this registry protocol.
|
java.lang.String[] |
getDefaultRegistryUrls() |
Returns default endpoint URLs for this protocol.
|
java.lang.String |
getFullName() |
Returns the full name for this protocol.
|
java.lang.String |
getShortName() |
Returns a short name for this protocol.
|
abstract boolean |
hasCapability(Capability stdCap,
RegCapabilityInterface resCap) |
Indicates whether a given RegCapabilityInterface object is an
instance of a given capability.
|
public static final RegistryProtocol RI1
public static final RegistryProtocol REGTAP
public static final RegistryProtocol[] PROTOCOLS
protected RegistryProtocol(java.lang.String shortName, java.lang.String fullName, java.lang.String[] dfltUrls)
shortName
- short namefullName
- full namedfltUrls
- strings giving some default registry endpoints for
this access protocolpublic java.lang.String getShortName()
public java.lang.String getFullName()
public java.lang.String[] getDefaultRegistryUrls()
public abstract java.lang.String[] discoverRegistryUrls(java.lang.String regUrl0) throws java.io.IOException
regUrl0
- bootstrap registry endpoint URLjava.io.IOException
public abstract RegistryQuery createIdListQuery(java.lang.String[] ivoids, Capability capability, java.net.URL regUrl)
ivoids
list, and
(c) has the given capability
If capability
is null, then restriction (c) does not apply.
If the input list of IDs is null or empty, the return value will be null.ivoids
- ID values for the required resourcescapability
- service capability type, or nullregUrl
- endpoint URL for a registry service implementing
this protocolpublic abstract RegistryQuery createKeywordQuery(java.lang.String[] keywords, ResourceField[] rfs, boolean isOr, Capability capability, java.net.URL regUrl)
keywords
- single-word keywords to match independentlyrfs
- resource fields against which keywords are to matchisOr
- if false all keywords must match,
if true at least one keyword must matchcapability
- if non-null, restricts the resources to those
with that capabilityregUrl
- endpoint URL for a registry service implementing
this protocolpublic abstract boolean hasCapability(Capability stdCap, RegCapabilityInterface resCap)
Really, the implementation of this ought not to be a function of the registry protocol in use. However, it's probably the case that the different registry implementations have different quirks in this respect, so take the opportunity to parameterise it by registry protocol in case that's required.
stdCap
- standard capability definitionresCap
- capability interface object representing part of
a registry resourceresCap
represents a capability
of the type stdCap
Copyright © 2018 Central Laboratory of the Research Councils. All Rights Reserved.