Package org.refcodes.codec
Class BaseEncoderImpl
- java.lang.Object
-
- org.refcodes.component.AbstractConnectableAutomaton
-
- org.refcodes.codec.BaseEncoderImpl
-
- All Implemented Interfaces:
Flushable
,BaseEncoder
,BaseMetricsAccessor
,BaseMetricsAccessor.BaseCodecMetricsProperty
,BaseMetricsAccessor.BaseMetricsBuilder<BaseEncoder>
,BaseMetricsAccessor.BaseMetricsMutator
,Encoder
,org.refcodes.component.Closable
,org.refcodes.component.Closable.CloseAutomaton
,org.refcodes.component.ClosedAccessor
,org.refcodes.component.ConnectableComponent
,org.refcodes.component.ConnectableComponent.ConnectableAutomaton
,org.refcodes.component.ConnectionStatusAccessor
,org.refcodes.component.Flushable
,org.refcodes.component.OpenedAccessor
,org.refcodes.io.ByteBlockConsumer
,org.refcodes.io.ByteBlockSender
,org.refcodes.io.ByteConsumer
,org.refcodes.io.ByteDatagramConsumer
,org.refcodes.io.ByteDatagramSender
,org.refcodes.io.ByteSender
,org.refcodes.io.Sendable
- Direct Known Subclasses:
BaseEncoderImpl.BaseEncoderConsumerImpl
,BaseOutputStreamEncoderImpl
public class BaseEncoderImpl extends org.refcodes.component.AbstractConnectableAutomaton implements BaseEncoder
Vanilla plain implementation of theBaseEncoder
interface to be used withByteSender
instances.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BaseEncoderImpl.BaseEncoderConsumerImpl
Vanilla plain implementation of theBaseEncoder.BaseEncoderConsumer
interface to be used withByteConsumer
(ByteSender
) instances.-
Nested classes/interfaces inherited from interface org.refcodes.codec.BaseEncoder
BaseEncoder.BaseEncoderConsumer
-
Nested classes/interfaces inherited from interface org.refcodes.codec.BaseMetricsAccessor
BaseMetricsAccessor.BaseCodecMetricsProperty, BaseMetricsAccessor.BaseMetricsBuilder<B extends BaseMetricsAccessor.BaseMetricsBuilder<B>>, BaseMetricsAccessor.BaseMetricsMutator
-
Nested classes/interfaces inherited from interface org.refcodes.component.Closable
org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.ClosedAccessor
org.refcodes.component.ClosedAccessor.ClosedMutator, org.refcodes.component.ClosedAccessor.ClosedProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectableComponent
org.refcodes.component.ConnectableComponent.ConnectableAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionStatusAccessor
org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusMutator, org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusProperty
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
BaseEncoderImpl()
Explicit default constructor.BaseEncoderImpl(org.refcodes.io.ByteConsumer aByteConsumer)
Constructs theBaseEncoder
instance using the providedByteConsumer
to receive the encoded data.BaseEncoderImpl(org.refcodes.io.ByteSender aByteSender)
Constructs theBaseEncoder
instance using the providedByteSender
to receive the encoded data.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
void
flush()
BaseMetrics
getBaseMetrics()
Retrieves the base codec metrics from the base codec metrics property.protected void
open(org.refcodes.io.ByteConsumer aConnection)
Open.void
setBaseMetrics(BaseMetrics aBaseMetrics)
Sets the base codec metrics for the base codec metrics property.BaseEncoder
withBaseMetrics(BaseMetrics _baseCodecMetrics)
Sets the base codec metrics for the base codec metrics property.void
writeDatagram(byte aDatagram)
void
writeDatagrams(byte[] aDatagram)
void
writeDatagrams(byte[] aDatagram, int aOffset, int aLength)
-
Methods inherited from class org.refcodes.component.AbstractConnectableAutomaton
getConnectionStatus, isClosable, isClosed, isOpenable, isOpened, open, setConnectionStatus
-
Methods inherited from interface org.refcodes.component.Closable
closeIn, closeQuietly, closeUnchecked
-
Methods inherited from interface org.refcodes.component.ConnectionStatusAccessor
getConnectionStatus, isConnectionOpened
-
-
-
-
Constructor Detail
-
BaseEncoderImpl
public BaseEncoderImpl(org.refcodes.io.ByteConsumer aByteConsumer)
Constructs theBaseEncoder
instance using the providedByteConsumer
to receive the encoded data.- Parameters:
aByteConsumer
- TheByteConsumer
to be fed with the encoded data.
-
BaseEncoderImpl
public BaseEncoderImpl(org.refcodes.io.ByteSender aByteSender) throws org.refcodes.component.OpenException
Constructs theBaseEncoder
instance using the providedByteSender
to receive the encoded data.- Parameters:
aByteSender
- TheByteSender
to be fed with the encoded data.- Throws:
org.refcodes.component.OpenException
- in case opening or accessing an open line (connection, junction, link) caused problems.
-
BaseEncoderImpl
protected BaseEncoderImpl()
Explicit default constructor.
-
-
Method Detail
-
getBaseMetrics
public BaseMetrics getBaseMetrics()
Retrieves the base codec metrics from the base codec metrics property.- Specified by:
getBaseMetrics
in interfaceBaseMetricsAccessor
- Returns:
- The base codec metrics stored by the base codec metrics property.
-
setBaseMetrics
public void setBaseMetrics(BaseMetrics aBaseMetrics)
Sets the base codec metrics for the base codec metrics property.- Specified by:
setBaseMetrics
in interfaceBaseMetricsAccessor.BaseMetricsMutator
- Parameters:
aBaseMetrics
- The base codec metrics to be stored by the font style property.
-
withBaseMetrics
public BaseEncoder withBaseMetrics(BaseMetrics _baseCodecMetrics)
Sets the base codec metrics for the base codec metrics property.- Specified by:
withBaseMetrics
in interfaceBaseMetricsAccessor.BaseMetricsBuilder<BaseEncoder>
- Parameters:
_baseCodecMetrics
- The base codec metrics to be stored by the font style property.- Returns:
- The builder for applying multiple build operations.
-
writeDatagram
public void writeDatagram(byte aDatagram) throws org.refcodes.component.OpenException
- Specified by:
writeDatagram
in interfaceorg.refcodes.io.ByteConsumer
- Specified by:
writeDatagram
in interfaceorg.refcodes.io.ByteDatagramConsumer
- Throws:
org.refcodes.component.OpenException
-
writeDatagrams
public void writeDatagrams(byte[] aDatagram) throws org.refcodes.component.OpenException
- Specified by:
writeDatagrams
in interfaceorg.refcodes.io.ByteBlockConsumer
- Specified by:
writeDatagrams
in interfaceorg.refcodes.io.ByteConsumer
- Throws:
org.refcodes.component.OpenException
-
writeDatagrams
public void writeDatagrams(byte[] aDatagram, int aOffset, int aLength) throws org.refcodes.component.OpenException
- Specified by:
writeDatagrams
in interfaceorg.refcodes.io.ByteBlockConsumer
- Specified by:
writeDatagrams
in interfaceorg.refcodes.io.ByteSender
- Throws:
org.refcodes.component.OpenException
-
flush
public void flush() throws org.refcodes.component.OpenException
-
close
public void close() throws org.refcodes.component.CloseException
- Specified by:
close
in interfaceorg.refcodes.component.Closable
- Overrides:
close
in classorg.refcodes.component.AbstractConnectableAutomaton
- Throws:
org.refcodes.component.CloseException
-
open
protected void open(org.refcodes.io.ByteConsumer aConnection) throws org.refcodes.component.OpenException
Open.- Parameters:
aConnection
- the connection- Throws:
org.refcodes.component.OpenException
- the open exception
-
-