Enum DurationMarshaller
- java.lang.Object
-
- java.lang.Enum<DurationMarshaller>
-
- org.wildfly.clustering.marshalling.protostream.time.DurationMarshaller
-
- All Implemented Interfaces:
Serializable,Comparable<DurationMarshaller>,FieldSetMarshaller<Duration,Duration>
public enum DurationMarshaller extends Enum<DurationMarshaller> implements FieldSetMarshaller<Duration,Duration>
Marshaller forDurationinstances, using the following strategy:- Marshal
Duration.ZEROas zero bytes - Marshal number of seconds of duration as unsigned long
- Marshal sub-second value of duration as unsigned integer, using millisecond precision, if possible
- Author:
- Paul Ferraro
-
-
Enum Constant Summary
Enum Constants Enum Constant Description INSTANCE
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DurationgetBuilder()Returns a builder for use withFieldSetMarshaller.readField(ProtoStreamReader, int, Object).intgetFields()Returns the number of fields written by this marshaller.DurationreadField(ProtoStreamReader reader, int index, Duration duration)Reads a single field from the specified reader at the specified index.static DurationMarshallervalueOf(String name)Returns the enum constant of this type with the specified name.static DurationMarshaller[]values()Returns an array containing the constants of this enum type, in the order they are declared.voidwriteFields(ProtoStreamWriter writer, int startIndex, Duration duration)Writes the set of fields from the specified object to the specified writer beginning at the specified index.
-
-
-
Enum Constant Detail
-
INSTANCE
public static final DurationMarshaller INSTANCE
-
-
Method Detail
-
values
public static DurationMarshaller[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (DurationMarshaller c : DurationMarshaller.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static DurationMarshaller valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum type has no constant with the specified nameNullPointerException- if the argument is null
-
getBuilder
public Duration getBuilder()
Description copied from interface:FieldSetMarshallerReturns a builder for use withFieldSetMarshaller.readField(ProtoStreamReader, int, Object). May return a shared instance, if the builder type is immutable, or a new instance, if the builder is mutable.- Specified by:
getBuilderin interfaceFieldSetMarshaller<Duration,Duration>- Returns:
- a builder.
-
getFields
public int getFields()
Description copied from interface:FieldSetMarshallerReturns the number of fields written by this marshaller.- Specified by:
getFieldsin interfaceFieldSetMarshaller<Duration,Duration>- Returns:
- a positive number
-
readField
public Duration readField(ProtoStreamReader reader, int index, Duration duration) throws IOException
Description copied from interface:FieldSetMarshallerReads a single field from the specified reader at the specified index.- Specified by:
readFieldin interfaceFieldSetMarshaller<Duration,Duration>- Parameters:
reader- a ProtoStream readerindex- the field indexduration- the builder to be populated with the read field- Returns:
- the builder containing the read field
- Throws:
IOException- if the field could not be read
-
writeFields
public void writeFields(ProtoStreamWriter writer, int startIndex, Duration duration) throws IOException
Description copied from interface:FieldSetMarshallerWrites the set of fields from the specified object to the specified writer beginning at the specified index.- Specified by:
writeFieldsin interfaceFieldSetMarshaller<Duration,Duration>- Parameters:
writer- a ProtoStream writerstartIndex- the start index for the embedded fieldsduration- the value to be written- Throws:
IOException- if the value could not be written
-
-