Class Guid


  • @Scriptable
    public final class Guid
    extends Object
    This class represents global universal IDs.

    Instances of this class are immutable.

    This class uses the SHAPRNG for secure random numbers and the SHA-1 algorithm for hashing to 20 bytes.

    • Field Detail

      • NULL_GUID

        public static final Guid NULL_GUID
        The GUID that consists solely of zero bytes.
      • STRING_LENGTH

        public static final int STRING_LENGTH
        The length of a GUID represented as a string.
        See Also:
        Constant Field Values
    • Method Detail

      • seed

        public static void seed()
        Initialize the random number generator.

        This method should be called at most once per Java VM instance.

      • createInstance

        public static Guid createInstance()
        Creates an instance of GUID using the SHAPRNG algorithm and the current system time.
        Returns:
        An initialized instance of Guid.
      • createInstance

        public static Guid createInstance​(byte[]... p_randomBytes)
        Creates an instance of GUID using given random bytes.
        Parameters:
        p_randomBytes - Random bytes that are used to create the GUID.
        Returns:
        An initialized instance of Guid.
      • getBytes

        public byte[] getBytes()
        Get the GUIDs 20 bytes.
        Returns:
        A copy of this GUIDs bytes.
      • isStringRepresentation

        public static boolean isStringRepresentation​(String p_str)
        Tests if the given string is a GUID representation.
        Parameters:
        p_str - The string to test (may be null).
        Returns:
        true if the string is representing a GUID, or false otherwise.
      • checkValidOrNull

        public static String checkValidOrNull​(String p_str)
        Check if the given string is null or represents a GUID, and throw an IllegalArgumentException if this is not the case.

        For security reasons possible error messages will contain at most an eight character prefix of the input string.

        Parameters:
        p_str - The string to check.
        Returns:
        The given string.
        Throws:
        IllegalArgumentException - If the given string is not null and does not represent a valid GUID.
      • checkValid

        public static String checkValid​(String p_str)
        Check if the given string is not null and represents a GUID, and throw an IllegalArgumentException if this is not the case.

        For security reasons possible error messages will contain at most an eight character prefix of the input string.

        Parameters:
        p_str - The string to check.
        Returns:
        The given string.
        Throws:
        IllegalArgumentException - If the given string is null or does not represent a valid GUID.
      • toString

        public String toString()
        Convert the GUID to a string.
        Overrides:
        toString in class Object
        Returns:
        The string representation of the GUID.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object