public class RestNamespace extends Namespace
Namespace
for RestClientContainer
s.Modifier and Type | Field and Description |
---|---|
static Namespace |
INSTANCE |
static java.lang.String |
NAME
The name of this namespace.
|
static java.lang.String |
SCHEME
The scheme of this namespace.
|
SCHEME_SEPARATOR
Constructor and Description |
---|
RestNamespace() |
RestNamespace(java.lang.String name,
java.lang.String desc) |
Modifier and Type | Method and Description |
---|---|
ID |
createInstance(java.lang.Object[] parameters)
Creates an instance of an
RestID . |
java.lang.String |
getScheme()
Get the primary scheme associated with this namespace.
|
java.lang.Class[][] |
getSupportedParameterTypes()
Get the supported parameter types for IDs created via subsequent calls to
Namespace.createInstance(Object[]) . |
equals, getAdapter, getCompareToForObject, getDescription, getHashCodeForID, getInitStringFromExternalForm, getName, getNameForID, getSupportedSchemes, hashCode, initialize, testIDEquals, toExternalForm, toString
public static Namespace INSTANCE
public static final java.lang.String NAME
public static final java.lang.String SCHEME
public RestNamespace()
public RestNamespace(java.lang.String name, java.lang.String desc)
public ID createInstance(java.lang.Object[] parameters) throws IDCreateException
RestID
. The parameters must contain
specific information.createInstance
in class Namespace
parameters
- a collection of attributes to call the right constructor on
RestID
.RestID
. Will not be null
.IDCreateException
- if construction failspublic java.lang.String getScheme()
Namespace
null
scheme
identifier. Note that the returned scheme should not contain the
Namespace.SCHEME_SEPARATOR (\":\").public java.lang.Class[][] getSupportedParameterTypes()
Namespace
Namespace.createInstance(Object[])
. Callers may use this method to
determine the available parameter types, and then create and pass in
conforming Object arrays to to Namespace.createInstance(Object[])
.
An empty two-dimensional array (new Class[0][0]) is the default returned by this abstract superclass. This means that the Object [] passed to
Namespace.createInstance(Object[])
will be ignored.
Subsclasses should override this method to specify the parameters that they will accept in calls to
Namespace.createInstance(Object[])
. The rows
of the returned Class array are the acceptable types for a given
invocation of createInstance.
Consider the following example:
public Class[][] getSupportedParameterTypes() { return new Class[][] { { String.class }, { String.class, String.class } }; }The above means that there are two acceptable values for the Object [] passed into
Namespace.createInstance(Object[])
: 1) a single String, and 2)
two Strings. These would therefore be acceptable as input to
createInstance:
ID newID1 = namespace.createInstance(new Object[] { "Hello" }); ID newID2 = namespace.createInstance(new Object[] { "Hello", "There"}};
getSupportedParameterTypes
in class Namespace
Namespace.createInstance(Object[])
. If zero-length
Class arrays are returned (i.e. Class[0][0]), then Object []
parameters to Namespace.createInstance(Object[])
will be ignored.