Class DataSerializers
java.lang.Object
ru.progrm_jarvis.javacommons.data.DataSerializers
Common
data serializers.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceFactory which creates something based on the size parameter. -
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull DataSerializer<@NotNull Boolean>Creates adata serializerforBoolean.static @NotNull DataSerializer<@NotNull Byte>Creates adata serializerforByte.static @NotNull DataSerializer<@NotNull Character>Creates adata serializerforCharacter.static <T> @NotNull DataSerializer<@NotNull Collection<T>>collectionDataSerializer(@NonNull DataSerializer<T> elementSerializer) Creates adata serializerforCollection.static <C extends Collection<T>,T>
@NotNull DataSerializer<@NotNull C>collectionDataSerializer(@NonNull DataSerializers.SizeAwareFactory<C> collectionFactory, @NonNull DataSerializer<T> elementSerializer) Creates adata serializerfor the givencollectiontype.static @NotNull DataSerializer<@NotNull Double>Creates adata serializerforDouble.static @NotNull DataSerializer<@NotNull Float>Creates adata serializerforFloat.static @NotNull DataSerializer<@NotNull Instant>Creates adata serializerforInstant.static @NotNull DataSerializer<@NotNull Integer>Creates adata serializerforInteger.static <T> @NotNull DataSerializer<@NotNull List<T>>listDataSerializer(@NonNull DataSerializer<T> elementSerializer) Creates adata serializerforList.static @NotNull DataSerializer<@NotNull LocalDate>Creates adata serializerforLocalDate.static @NotNull DataSerializer<@NotNull LocalDateTime>localDateTimeDataSerializer(@NotNull ZoneOffset zoneOffset) Creates adata serializerforLocalDateTime.static @NotNull DataSerializer<@NotNull LocalTime>Creates adata serializerforLocalTime.static @NotNull DataSerializer<@NotNull Long>Creates adata serializerforLong.static <K,V> @NotNull DataSerializer<@NotNull Map<K, V>> mapDataSerializer(@NonNull DataSerializer<K> keySerializer, @NonNull DataSerializer<V> valueSerializer) Creates adata serializerforMap.static <M extends Map<K,V>, K, V>
@NotNull DataSerializer<@NotNull M>mapDataSerializer(@NonNull DataSerializers.SizeAwareFactory<M> mapFactory, @NonNull DataSerializer<K> keySerializer, @NonNull DataSerializer<V> valueSerializer) Creates adata serializerfor the givenmaptype.static <E extends Enum<E>>
DataSerializer<@NotNull E>namedEnumDataSerializer(@NonNull Class<E> enumType) Creates adata serializerfor the givenenumtype which will implement stable serialization which will rely on enum names.static <E extends Enum<E>>
DataSerializer<@NotNull E>ordinalEnumDataSerializer(@NonNull Class<E> enumType) Creates adata serializerfor the givenenumtype which will implement unstable serialization which will rely on enum ordinal.static <T> @NotNull DataSerializer<@NotNull Set<T>>setDataSerializer(@NonNull DataSerializer<T> elementSerializer) Creates adata serializerforSet.static @NotNull DataSerializer<@NotNull Short>Creates adata serializerforShort.static @NotNull DataSerializer<@NotNull String>Creates adata serializerforString.static @NotNull DataSerializer<@NotNull UUID>Creates adata serializerforUUID.
-
Method Details
-
booleanDataSerializer
Creates adata serializerforBoolean.- Returns:
- data serializer for
Boolean
-
byteDataSerializer
Creates adata serializerforByte.- Returns:
- data serializer for
Byte
-
shortDataSerializer
Creates adata serializerforShort.- Returns:
- data serializer for
Short
-
charDataSerializer
Creates adata serializerforCharacter.- Returns:
- data serializer for
Character
-
intDataSerializer
Creates adata serializerforInteger.- Returns:
- data serializer for
Integer
-
longDataSerializer
Creates adata serializerforLong.- Returns:
- data serializer for
Long
-
floatDataSerializer
Creates adata serializerforFloat.- Returns:
- data serializer for
Float
-
doubleDataSerializer
Creates adata serializerforDouble.- Returns:
- data serializer for
Double
-
stringDataSerializer
Creates adata serializerforString.- Returns:
- data serializer for
String
-
uuidDataSerializer
Creates adata serializerforUUID.- Returns:
- data serializer for
UUID
-
collectionDataSerializer
@NotNull public static <C extends Collection<T>,T> @NotNull DataSerializer<@NotNull C> collectionDataSerializer(@NonNull DataSerializers.SizeAwareFactory<C> collectionFactory, @NonNull @NonNull DataSerializer<T> elementSerializer) Creates adata serializerfor the givencollectiontype.- Type Parameters:
C- the type of the collectionT- the type of the collection's elements- Parameters:
collectionFactory- factory used for creation of collectionselementSerializer- serializer used for elements' serialization- Returns:
- data serializer for the given
collectiontype
-
collectionDataSerializer
@NotNull public static <T> @NotNull DataSerializer<@NotNull Collection<T>> collectionDataSerializer(@NonNull @NonNull DataSerializer<T> elementSerializer) Creates adata serializerforCollection.- Type Parameters:
T- the type of the collection's elements- Parameters:
elementSerializer- serializer used for elements' serialization- Returns:
- data serializer for
Collection - API note
- there are no specific guarantees for the given collection
-
listDataSerializer
@NotNull public static <T> @NotNull DataSerializer<@NotNull List<T>> listDataSerializer(@NonNull @NonNull DataSerializer<T> elementSerializer) Creates adata serializerforList.- Type Parameters:
T- the type of the list's elements- Parameters:
elementSerializer- serializer used for elements' serialization- Returns:
- data serializer for
List - API note
- there are no specific guarantees for the given list
-
setDataSerializer
@NotNull public static <T> @NotNull DataSerializer<@NotNull Set<T>> setDataSerializer(@NonNull @NonNull DataSerializer<T> elementSerializer) Creates adata serializerforSet.- Type Parameters:
T- the type of the set's elements- Parameters:
elementSerializer- serializer used for elements' serialization- Returns:
- data serializer for
Set - API note
- there are no specific guarantees for the given set
-
mapDataSerializer
@NotNull public static <M extends Map<K,V>, @NotNull DataSerializer<@NotNull M> mapDataSerializerK, V> (@NonNull DataSerializers.SizeAwareFactory<M> mapFactory, @NonNull @NonNull DataSerializer<K> keySerializer, @NonNull @NonNull DataSerializer<V> valueSerializer) Creates adata serializerfor the givenmaptype.- Type Parameters:
M- the type of the mapK- the type of the maps' keysV- the type of the maps' values- Parameters:
mapFactory- factory used for creation of mapskeySerializer- serializer used for keys' serializationvalueSerializer- serializer used for values' serialization- Returns:
- data serializer for the given
maptype
-
mapDataSerializer
@NotNull public static <K,V> @NotNull DataSerializer<@NotNull Map<K,V>> mapDataSerializer(@NonNull @NonNull DataSerializer<K> keySerializer, @NonNull @NonNull DataSerializer<V> valueSerializer) Creates adata serializerforMap.- Type Parameters:
K- the type of the maps' keysV- the type of the maps' values- Parameters:
keySerializer- serializer used for keys' serializationvalueSerializer- serializer used for values' serialization- Returns:
- data serializer for
Collection - API note
- there are no specific guarantees for the given map
-
namedEnumDataSerializer
public static <E extends Enum<E>> DataSerializer<@NotNull E> namedEnumDataSerializer(@NonNull @NonNull Class<E> enumType) Creates adata serializerfor the givenenumtype which will implement stable serialization which will rely on enum names.- Type Parameters:
E- the type of the enum- Parameters:
enumType- class object representing the enum type- Returns:
data serializerfor the givenenumtype
-
ordinalEnumDataSerializer
public static <E extends Enum<E>> DataSerializer<@NotNull E> ordinalEnumDataSerializer(@NonNull @NonNull Class<E> enumType) Creates adata serializerfor the givenenumtype which will implement unstable serialization which will rely on enum ordinal.- Type Parameters:
E- the type of the enum- Parameters:
enumType- class object representing the enum type- Returns:
data serializerfor the givenenumtype
-
localDateTimeDataSerializer
@NotNull public static @NotNull DataSerializer<@NotNull LocalDateTime> localDateTimeDataSerializer(@NotNull @NotNull ZoneOffset zoneOffset) Creates adata serializerforLocalDateTime.- Parameters:
zoneOffset- zone offset used for local time management- Returns:
- data serializer for
LocalDateTime
-
localDateDataSerializer
Creates adata serializerforLocalDate.- Returns:
- data serializer for
LocalDate
-
localTimeDataSerializer
Creates adata serializerforLocalTime.- Returns:
- data serializer for
LocalTime
-
instantDataSerializer
Creates adata serializerforInstant.- Returns:
- data serializer for
Instant
-