- java.lang.Object
-
- org.refcodes.serial.AbstractPayloadSegment<T>
-
- Type Parameters:
T
- The type of the segment's payload.
- All Implemented Interfaces:
Serializable
,org.refcodes.mixin.AliasAccessor
,org.refcodes.mixin.LengthAccessor
,org.refcodes.mixin.PayloadAccessor<T>
,org.refcodes.mixin.PayloadAccessor.PayloadBuilder<T,PayloadTransmission<T>>
,org.refcodes.mixin.PayloadAccessor.PayloadMutator<T>
,org.refcodes.mixin.PayloadAccessor.PayloadProperty<T>
,PayloadSegment<T>
,PayloadTransmission<T>
,Segment
,Segment.SegmentMixin
,Transmission
,Transmission.TransmissionMixin
- Direct Known Subclasses:
AsciizArraySegment
,AsciizSegment
,BooleanSegment
,ByteSegment
,DoubleSegment
,FloatSegment
,IntSegment
,LongSegment
,NumberSegment
,ShortSegment
public abstract class AbstractPayloadSegment<T> extends Object implements PayloadSegment<T>, Segment.SegmentMixin
An abstract implementation of aSegment
with payload.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.AliasAccessor
org.refcodes.mixin.AliasAccessor.AliasBuilder<B extends org.refcodes.mixin.AliasAccessor.AliasBuilder<B>>, org.refcodes.mixin.AliasAccessor.AliasMutator, org.refcodes.mixin.AliasAccessor.AliasProperty
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.LengthAccessor
org.refcodes.mixin.LengthAccessor.LengthBuilder<B extends org.refcodes.mixin.LengthAccessor.LengthBuilder<B>>, org.refcodes.mixin.LengthAccessor.LengthMutator, org.refcodes.mixin.LengthAccessor.LengthProperty
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.PayloadAccessor
org.refcodes.mixin.PayloadAccessor.PayloadBuilder<P extends Object,B extends org.refcodes.mixin.PayloadAccessor.PayloadBuilder<P,B>>, org.refcodes.mixin.PayloadAccessor.PayloadMutator<P extends Object>, org.refcodes.mixin.PayloadAccessor.PayloadProperty<P extends Object>
-
Nested classes/interfaces inherited from interface org.refcodes.serial.Segment
Segment.SegmentMixin
-
Nested classes/interfaces inherited from interface org.refcodes.serial.Transmission
Transmission.TransmissionMixin
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractPayloadSegment()
Empty constructor fur sub-classes.AbstractPayloadSegment(String aAlias)
Constructs an emptySegment
to be initialized viaSegment.fromTransmission(Sequence)
orSegment.fromTransmission(Sequence, int)
.AbstractPayloadSegment(String aAlias, T aValue)
Constructs aSegment
instance with the given value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object obj)
String
getAlias()
T
getPayload()
int
hashCode()
void
setPayload(T aValue)
org.refcodes.struct.SimpleTypeMap
toSimpleTypeMap()
Returns theSimpleTypeMap
representation of thisTransmission
.String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.refcodes.serial.Segment
fromTransmission, fromTransmission, fromTransmission, fromTransmission, receiveFrom, receiveFrom
-
Methods inherited from interface org.refcodes.serial.Segment.SegmentMixin
receiveFrom
-
Methods inherited from interface org.refcodes.serial.Transmission
getLength, toSchema, toSequence, transmitTo, transmitTo
-
Methods inherited from interface org.refcodes.serial.Transmission.TransmissionMixin
transmitTo
-
-
-
-
Constructor Detail
-
AbstractPayloadSegment
protected AbstractPayloadSegment()
Empty constructor fur sub-classes.
-
AbstractPayloadSegment
public AbstractPayloadSegment(String aAlias)
Constructs an emptySegment
to be initialized viaSegment.fromTransmission(Sequence)
orSegment.fromTransmission(Sequence, int)
.- Parameters:
aAlias
- The alias which identifies the content of this segment.
-
-
Method Detail
-
setPayload
public void setPayload(T aValue)
- Specified by:
setPayload
in interfaceorg.refcodes.mixin.PayloadAccessor.PayloadMutator<T>
-
getPayload
public T getPayload()
- Specified by:
getPayload
in interfaceorg.refcodes.mixin.PayloadAccessor<T>
-
getAlias
public String getAlias()
- Specified by:
getAlias
in interfaceorg.refcodes.mixin.AliasAccessor
-
toSimpleTypeMap
public org.refcodes.struct.SimpleTypeMap toSimpleTypeMap()
Returns theSimpleTypeMap
representation of thisTransmission
. In case this Transmission hasTransmission
children, then the children are queried as well and contained in the resultingSimpleTypeMap
. The aliases of the accordingTransmission
instances represent the resulting path to aTransmission
's final simple type.- Specified by:
toSimpleTypeMap
in interfaceTransmission
- Returns:
- The
SimpleTypeMap
representing thisTransmission
and (if any) its children, with the according aliases forming the paths to theTransmission
's values.
-
-