public interface

UUIDGenerationStrategy

implements Serializable
org.hibernate.id.UUIDGenerationStrategy
Known Indirect Subclasses

Class Overview

A strategy for generating a variant 2 UUID value.

Summary

Public Methods
abstract UUID generateUUID(SessionImplementor session)
Generate the UUID.
abstract int getGeneratedVersion()
Which variant, according to IETF RFC 4122, of UUID does this strategy generate? RFC 4122 defines 5 variants (though it only describes algorithms to generate 4):
  • 1 = time based
  • 2 = DCE based using POSIX UIDs
  • 3 = name based (md5 hash)
  • 4 = random numbers based
  • 5 = name based (sha-1 hash)
Returning the values above should be reserved to those generators creating variants compliant with the corresponding RFC definition; others can feel free to return other values as they see fit.

Public Methods

public abstract UUID generateUUID (SessionImplementor session)

Generate the UUID.

Parameters
session The session asking for the generation
Returns
  • The generated UUID.

public abstract int getGeneratedVersion ()

Which variant, according to IETF RFC 4122, of UUID does this strategy generate? RFC 4122 defines 5 variants (though it only describes algorithms to generate 4):

  • 1 = time based
  • 2 = DCE based using POSIX UIDs
  • 3 = name based (md5 hash)
  • 4 = random numbers based
  • 5 = name based (sha-1 hash)
Returning the values above should be reserved to those generators creating variants compliant with the corresponding RFC definition; others can feel free to return other values as they see fit.

Informational only, and not used at this time.

Returns
  • The supported generation version