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 IdFactory
A factory for creating a new, uniqueId
for an object.- Author:
- Fabrizio Giudici
- Status: stable API
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.Class<IdFactory>
_IdFactory_
static IdFactory
DEFAULT
A default implementation that uses UUID.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Id
createId()
Creates a new id.default Id
createId(java.lang.Class<?> objectClass)
Creates a new id for an object of the given class.default Id
createId(java.lang.Class<?> objectClass, java.lang.Object object)
Creates a new id for the given object of the given class.static IdFactory
createMock()
Creates a new mock factory, useful for testing, that returns mock UUIDs based on a sequential counter.
-
-
-
Method Detail
-
createMock
@Nonnull static IdFactory createMock()
Creates a new mock factory, useful for testing, that returns mock UUIDs based on a sequential counter.- Returns:
- the new factory
- Since:
- 3.2-ALPHA-23
-
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 theId
is 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 aClass
for cases in which theobject
implements multiple interfaces and one wants to specify the referenced one.- Parameters:
object
- the object for which theId
objectClass
- the class of the object for which theId
is created- Returns:
- the new id
-
-