Interface IIDFactory

  • All Known Implementing Classes:
    IDFactory

    public interface IIDFactory
    Contract for IDFactory
    Restriction:
    This interface is not intended to be implemented by clients.
    • Method Detail

      • addNamespace

        Namespace addNamespace​(Namespace n)
                        throws SecurityException
        Add the given Namespace to our table of available Namespaces
        Parameters:
        n - the Namespace to add
        Returns:
        Namespace the namespace already in table (null if Namespace not previously in table)
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace
      • containsNamespace

        boolean containsNamespace​(Namespace n)
                           throws SecurityException
        Check whether table contains given Namespace instance
        Parameters:
        n - the Namespace to look for
        Returns:
        true if table does contain given Namespace, false otherwise
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace
      • getNamespaces

        List<Namespace> getNamespaces()
                               throws SecurityException
        Get a list of the current Namespace instances exposed by this factory.
        Returns:
        List of Namespace instances
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace
      • getNamespace

        Namespace getNamespace​(Namespace n)
                        throws SecurityException
        Get the given Namespace instance from table
        Parameters:
        n - the Namespace to look for
        Returns:
        Namespace
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace
      • getNamespaceByName

        Namespace getNamespaceByName​(String name)
                              throws SecurityException
        Get a Namespace instance by its string name.
        Parameters:
        name - the name to use for lookup
        Returns:
        Namespace instance. Null if not found.
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace
      • createGUID

        ID createGUID()
               throws IDCreateException
        Make a GUID using SHA-1 hash algorithm and a default of 16bits of data length. The value is Base64 encoded to allow for easy display.
        Returns:
        new ID instance
        Throws:
        IDCreateException - if ID cannot be constructed
      • createGUID

        ID createGUID​(int length)
               throws IDCreateException
        Make a GUID using SHA-1 hash algorithm and a default of 16bits of data length. The value is Base64 encoded to allow for easy display.
        Parameters:
        length - the byte-length of data used to create a GUID
        Returns:
        new ID instance
        Throws:
        IDCreateException - if ID cannot be constructed
      • createID

        ID createID​(Namespace n,
                    Object[] args)
             throws IDCreateException
        Make a new identity. Given a Namespace, and an array of instance constructor parameters, return a new instance of an ID belonging to the given Namespace
        Parameters:
        n - the Namespace to which the ID will belong
        args - an Object [] of the parameters for the ID instance constructor
        Throws:
        IDCreateException - thrown if class for instantiator or instance can't be loaded, if something goes wrong during instance construction
      • createID

        ID createID​(String namespaceName,
                    Object[] args)
             throws IDCreateException
        Make a new identity. Given a Namespace name, and an array of instance constructor parameters, return a new instance of an ID belonging to the given Namespace
        Parameters:
        namespaceName - the name of the Namespace to which the ID will belong
        args - an Object [] of the parameters for the ID instance constructor
        Throws:
        IDCreateException - thrown if class for instantiator or ID instance can't be loaded, if something goes wrong during instance construction
      • createID

        ID createID​(Namespace namespace,
                    String uri)
             throws IDCreateException
        Make a new identity instance from a namespace and String.
        Parameters:
        namespace - the namespace to use to create the ID
        uri - the String uri to use to create the ID
        Throws:
        IDCreateException - thrown if class for instantiator or ID instance can't be loaded, if something goes wrong during instance construction
      • createID

        ID createID​(String namespaceName,
                    String idValue)
             throws IDCreateException
        Make a new identity instance from a namespaceName and idValue. The namespaceName is first used to lookup the namespace with getNamespaceByName(String), and then the result is passed into createID(Namespace,String).
        Parameters:
        namespaceName - the name of the namespace that should be used to create the ID
        idValue - the String value to use to create the ID
        Throws:
        IDCreateException - thrown if class for instantiator or ID instance can't be loaded, if something goes wrong during instance construction
      • createStringID

        ID createStringID​(String idString)
                   throws IDCreateException
        Make a an ID from a String
        Parameters:
        idString - the String to use as this ID's unique value. Note: It is incumbent upon the caller of this method to be sure that the given string allows the resulting ID to satisfy the ID contract for global uniqueness within the associated Namespace.
        Returns:
        valid ID instance
        Throws:
        IDCreateException - thrown if class for instantiator or ID instance can't be loaded, if something goes wrong during instance construction
      • createLongID

        ID createLongID​(long l)
                 throws IDCreateException
        Make a an ID from a long
        Parameters:
        l - the long to use as this ID's unique value. Note: It is incumbent upon the caller of this method to be sure that the given long allows the resulting ID to satisfy the ID contract for global uniqueness within the associated Namespace.
        Returns:
        valid ID instance
        Throws:
        IDCreateException - thrown if class for instantiator or ID instance can't be loaded, if something goes wrong during instance construction
      • createUuID

        ID createUuID​(String uuid)
               throws IDCreateException
        Create a UuID from String
        Parameters:
        uuid - the String to use. Must be in UUID format as returned from UUID.toString(). Must not be null.
        Returns:
        valid ID instance
        Throws:
        IDCreateException
        Since:
        3.5
      • createUuID

        ID createUuID​(UUID uuid)
               throws IDCreateException
        Create a UuID from UUID
        Parameters:
        uuid - the UUID to use. Must not be null.
        Returns:
        valid ID instance
        Throws:
        IDCreateException
        Since:
        3.5
      • createUuID

        ID createUuID​(URI uuidURI)
               throws IDCreateException
        Create a UuID from URI.
        Parameters:
        uuidURI - the URI. Must not be null and must be in valid uuid syntax form as specified by rfc4122 see http://tools.ietf.org/html/rfc4122. Example: 'uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6'
        Returns:
        valid ID instance
        Throws:
        IDCreateException
        Since:
        3.5
      • createURIID

        ID createURIID​(URI uri)
                throws IDCreateException
        Create a URIID from URI.
        Parameters:
        uri - the URI to use for the URIID. Must not be null.
        Returns:
        valid ID instance
        Throws:
        IDCreateException
        Since:
        3.5
      • createURIID

        ID createURIID​(String uri)
                throws IDCreateException
        Create a URIID from String.
        Parameters:
        uri - the String to use for the URIID. Must not be null, and must be valid URI format as per URI.toString().
        Returns:
        valid ID instance
        Throws:
        IDCreateException
        Since:
        3.5
      • removeNamespace

        Namespace removeNamespace​(Namespace n)
                           throws SecurityException
        Remove the given Namespace from our table of available Namespaces
        Parameters:
        n - the Namespace to remove
        Returns:
        Namespace the namespace already in table (null if Namespace not previously in table)
        Throws:
        SecurityException - thrown if caller does not have appropriate NamespacePermission for given namespace