Class RestNamespace

java.lang.Object
org.eclipse.ecf.core.identity.Namespace
org.eclipse.ecf.remoteservice.rest.identity.RestNamespace
All Implemented Interfaces:
Serializable, org.eclipse.core.runtime.IAdaptable

public class RestNamespace extends Namespace
This class represents a Namespace for RestClientContainers.
See Also:
  • Field Details

  • Constructor Details

    • RestNamespace

      public RestNamespace()
    • RestNamespace

      public RestNamespace(String name, String desc)
  • Method Details

    • 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.