Package it.tidalwave.util
Interface IdFactory
-
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface IdFactoryA factory for creating a new, uniqueIdfor an object.- Author:
- Fabrizio Giudici
- Status: stable API
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classIdFactory.Private
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description IdcreateId()Creates a new id.default IdcreateId(java.lang.Class<?> objectClass)Creates a new id for an object of the given class.default IdcreateId(java.lang.Class<?> objectClass, java.lang.Object object)Creates a new id for the given object of the given class.
-
-
-
Field Detail
-
_IdFactory_
static final java.lang.Class<IdFactory> _IdFactory_
-
DEFAULT
static final IdFactory DEFAULT
A default implementation that uses UUID.- Since:
- 3.2-ALPHA-19
-
MOCK
static final IdFactory MOCK
A mock implementation, useful for testing, that returns mock UUIDs based on a sequential counter.- Since:
- 3.2-ALPHA-19
-
-
Method Detail
-
createId
@Nonnull Id createId()
Creates a new id.- Returns:
- the new id
-
createId
@Nonnull default Id createId(@Nonnull java.lang.Class<?> objectClass)
Creates a new id for an object of the given class.- Parameters:
objectClass- the class of the object for which theIdis created- Returns:
- the new id
-
createId
@Nonnull default Id createId(@Nonnull java.lang.Class<?> objectClass, @Nonnull java.lang.Object object)
Creates a new id for the given object of the given class. This method allows to explicitly pass aClassfor cases in which theobjectimplements multiple interfaces and one wants to specify the referenced one.- Parameters:
object- the object for which theIdobjectClass- the class of the object for which theIdis created- Returns:
- the new id
-
-