public static class StringID.StringIDNamespace extends Namespace
SCHEME_SEPARATOR| Constructor and Description |
|---|
StringIDNamespace() |
StringIDNamespace(java.lang.String name,
java.lang.String desc) |
| Modifier and Type | Method and Description |
|---|---|
ID |
createInstance(java.lang.Object[] parameters)
Make an instance of this namespace.
|
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, toStringpublic StringIDNamespace(java.lang.String name,
java.lang.String desc)
public StringIDNamespace()
public ID createInstance(java.lang.Object[] parameters) throws IDCreateException
NamespaceSee
Namespace.getSupportedParameterTypes() to get information relevant to
deciding what parameter types are expected by this method.
createInstance in class Namespaceparameters - an Object[] of parameters for creating ID instances. May be
null.IDCreateException - if construction failspublic java.lang.String getScheme()
Namespacenull scheme
identifier. Note that the returned scheme should not contain the
Namespace.SCHEME_SEPARATOR (\":\").public java.lang.Class<?>[][] getSupportedParameterTypes()
NamespaceNamespace.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 NamespaceNamespace.createInstance(Object[]). If zero-length
Class arrays are returned (i.e. Class[0][0]), then Object []
parameters to Namespace.createInstance(Object[]) will be ignored.