- the Integer ID for positive integer
- the String ID
- the UUID ID
- the empty ID
You can write your own custom ID classes.
Create an ID
The factory must be able to create an ID from a JAVA object:
@Nullable IId fromObject(@Nullable Object aObj);
Creation of a random value
The factory should be able to create a random ID:
@NotNull IId random();
Reading a value from an I/O stream
The factory should be able to read a value from a DataInput stream.
@NotNull IId fromStream(@NotNull DataInput aStream) throws IOException;
Writing the value to a DataOutput stream is implemented in the class, which is built with the factory (is part of the IId interface).
Return of the type
@NotNull EIdType getType();