Package com.fasterxml.uuid.impl
Class NameBasedGenerator
java.lang.Object
com.fasterxml.uuid.UUIDGenerator
com.fasterxml.uuid.StringArgGenerator
com.fasterxml.uuid.impl.NameBasedGenerator
Implementation of UUID generator that uses one of name-based generation methods
(versions 3 (MD5) and 5 (SHA1)).
As all JUG provided implementations, this generator is fully thread-safe; access to digester is synchronized as necessary.
- Since:
- 3.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final MessageDigest
Message digesster to use for hash calculationprotected final UUID
Namespace to use as prefix.protected final UUIDType
static final Charset
static final UUID
Namespace used when name is a DNS name.static final UUID
Namespace used when name is an OID.static final UUID
Namespace used when name is a URL.static final UUID
Namespace used when name is an X500 identifier -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongenerate
(byte[] nameBytes) Method for generating name-based UUIDs using specified byte-serialization of name.Method for generating name-based UUIDs using specified name (serialized to bytes using UTF-8 encoding)getType()
Accessor for determining type of UUIDs (version) that this generator instance will produce.Methods inherited from class com.fasterxml.uuid.UUIDGenerator
_toInt, _toLong, _toShort
-
Field Details
-
_utf8
-
NAMESPACE_DNS
Namespace used when name is a DNS name. -
NAMESPACE_URL
Namespace used when name is a URL. -
NAMESPACE_OID
Namespace used when name is an OID. -
NAMESPACE_X500
Namespace used when name is an X500 identifier -
_namespace
Namespace to use as prefix. -
_digester
Message digesster to use for hash calculation -
_type
-
-
Constructor Details
-
NameBasedGenerator
- Parameters:
namespace
- of the namespace, as defined by the spec. UUID has 4 pre-defined "standard" name space strings that can be passed to UUID constructor (see example below). Note that this argument is optional; if no namespace is needed (for example when name includes namespace prefix), null may be passed.digester
- Hashing algorithm to use.
-
-
Method Details
-
getType
Description copied from class:UUIDGenerator
Accessor for determining type of UUIDs (version) that this generator instance will produce.- Specified by:
getType
in classUUIDGenerator
-
getNamespace
-
generate
Description copied from class:StringArgGenerator
Method for generating name-based UUIDs using specified name (serialized to bytes using UTF-8 encoding)- Specified by:
generate
in classStringArgGenerator
-
generate
Description copied from class:StringArgGenerator
Method for generating name-based UUIDs using specified byte-serialization of name.- Specified by:
generate
in classStringArgGenerator
-