Class RestNamespace

    • Constructor Detail

      • RestNamespace

        public RestNamespace()
      • RestNamespace

        public RestNamespace​(String name,
                             String desc)
    • Method Detail

      • createInstance

        public ID createInstance​(Object[] parameters)
                          throws IDCreateException
        Creates an instance of an RestID. The parameters must contain specific information.
        Specified by:
        createInstance in class Namespace
        Parameters:
        parameters - a collection of attributes to call the right constructor on RestID.
        Returns:
        an instance of RestID. Will not be null.
        Throws:
        IDCreateException - if construction fails
      • getScheme

        public String getScheme()
        Description copied from class: Namespace
        Get the primary scheme associated with this namespace. Subclasses must provide an implementation that returns a non-null scheme identifier. Note that the returned scheme should not contain the Namespace.SCHEME_SEPARATOR (\":\").
        Specified by:
        getScheme in class Namespace
        Returns:
        a String scheme identifier. Must not be null.
      • getSupportedParameterTypes

        public Class[][] getSupportedParameterTypes()
        Description copied from class: Namespace
        Get the supported parameter types for IDs created via subsequent calls to 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"}};
         
        Overrides:
        getSupportedParameterTypes in class Namespace
        Returns:
        Class [][] an array of class []s. Rows of the returned two-dimensional array define the acceptable parameter types for a single call to 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.