Package org.refcodes.codec
Class BaseEncoderImpl
- java.lang.Object
-
- org.refcodes.component.AbstractConnectableAutomaton
-
- org.refcodes.codec.BaseEncoderImpl
-
- All Implemented Interfaces:
java.io.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 theBaseEncoderinterface to be used withByteSenderinstances.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBaseEncoderImpl.BaseEncoderConsumerImplVanilla plain implementation of theBaseEncoder.BaseEncoderConsumerinterface 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 protectedBaseEncoderImpl()Explicit default constructor.BaseEncoderImpl(org.refcodes.io.ByteConsumer aByteConsumer)Constructs theBaseEncoderinstance using the providedByteConsumerto receive the encoded data.BaseEncoderImpl(org.refcodes.io.ByteSender aByteSender)Constructs theBaseEncoderinstance using the providedByteSenderto receive the encoded data.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidflush()BaseMetricsgetBaseMetrics()Retrieves the base codec metrics from the base codec metrics property.protected voidopen(org.refcodes.io.ByteConsumer aConnection)Open.voidsetBaseMetrics(BaseMetrics aBaseMetrics)Sets the base codec metrics for the base codec metrics property.BaseEncoderwithBaseMetrics(BaseMetrics _baseCodecMetrics)Sets the base codec metrics for the base codec metrics property.voidwriteDatagram(byte aDatagram)voidwriteDatagrams(byte[] aDatagram)voidwriteDatagrams(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 theBaseEncoderinstance using the providedByteConsumerto receive the encoded data.- Parameters:
aByteConsumer- TheByteConsumerto be fed with the encoded data.
-
BaseEncoderImpl
public BaseEncoderImpl(org.refcodes.io.ByteSender aByteSender) throws org.refcodes.component.OpenExceptionConstructs theBaseEncoderinstance using the providedByteSenderto receive the encoded data.- Parameters:
aByteSender- TheByteSenderto 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:
getBaseMetricsin 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:
setBaseMetricsin 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:
withBaseMetricsin 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:
writeDatagramin interfaceorg.refcodes.io.ByteConsumer- Specified by:
writeDatagramin interfaceorg.refcodes.io.ByteDatagramConsumer- Throws:
org.refcodes.component.OpenException
-
writeDatagrams
public void writeDatagrams(byte[] aDatagram) throws org.refcodes.component.OpenException- Specified by:
writeDatagramsin interfaceorg.refcodes.io.ByteBlockConsumer- Specified by:
writeDatagramsin 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:
writeDatagramsin interfaceorg.refcodes.io.ByteBlockConsumer- Specified by:
writeDatagramsin interfaceorg.refcodes.io.ByteSender- Throws:
org.refcodes.component.OpenException
-
flush
public void flush() throws org.refcodes.component.OpenException- Specified by:
flushin interfaceorg.refcodes.io.ByteSender- Specified by:
flushin interfacejava.io.Flushable- Specified by:
flushin interfaceorg.refcodes.component.Flushable- Throws:
org.refcodes.component.OpenException
-
close
public void close() throws org.refcodes.component.CloseException- Specified by:
closein interfaceorg.refcodes.component.Closable- Overrides:
closein classorg.refcodes.component.AbstractConnectableAutomaton- Throws:
org.refcodes.component.CloseException
-
open
protected void open(org.refcodes.io.ByteConsumer aConnection) throws org.refcodes.component.OpenExceptionOpen.- Parameters:
aConnection- the connection- Throws:
org.refcodes.component.OpenException- the open exception
-
-