org.apache.mina.filter.codec.textline
Class TextLineCodecFactory

java.lang.Object
  extended by org.apache.mina.filter.codec.textline.TextLineCodecFactory
All Implemented Interfaces:
ProtocolCodecFactory

public class TextLineCodecFactory
extends Object
implements ProtocolCodecFactory

A ProtocolCodecFactory that performs encoding and decoding between a text line data and a Java string object. This codec is useful especially when you work with a text-based protocols such as SMTP and IMAP.

Author:
Apache MINA Project

Constructor Summary
TextLineCodecFactory()
          Creates a new instance with the current default Charset.
TextLineCodecFactory(Charset charset)
          Creates a new instance with the specified Charset.
TextLineCodecFactory(Charset charset, LineDelimiter encodingDelimiter, LineDelimiter decodingDelimiter)
          Creates a new instance of TextLineCodecFactory.
TextLineCodecFactory(Charset charset, String encodingDelimiter, String decodingDelimiter)
          Creates a new instance of TextLineCodecFactory.
 
Method Summary
 ProtocolDecoder getDecoder(IoSession session)
          Returns a new (or reusable) instance of ProtocolDecoder which decodes binary or protocol-specific data into message objects.
 int getDecoderMaxLineLength()
          Returns the allowed maximum size of the line to be decoded.
 ProtocolEncoder getEncoder(IoSession session)
          Returns a new (or reusable) instance of ProtocolEncoder which encodes message objects into binary or protocol-specific data.
 int getEncoderMaxLineLength()
          Returns the allowed maximum size of the encoded line.
 void setDecoderMaxLineLength(int maxLineLength)
          Sets the allowed maximum size of the line to be decoded.
 void setEncoderMaxLineLength(int maxLineLength)
          Sets the allowed maximum size of the encoded line.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextLineCodecFactory

public TextLineCodecFactory()
Creates a new instance with the current default Charset.


TextLineCodecFactory

public TextLineCodecFactory(Charset charset)
Creates a new instance with the specified Charset. The encoder uses a UNIX LineDelimiter and the decoder uses the AUTO LineDelimiter.

Parameters:
charset - The charset to use in the encoding and decoding

TextLineCodecFactory

public TextLineCodecFactory(Charset charset,
                            String encodingDelimiter,
                            String decodingDelimiter)
Creates a new instance of TextLineCodecFactory. This constructor provides more flexibility for the developer.

Parameters:
charset - The charset to use in the encoding and decoding
encodingDelimiter - The line delimeter for the encoder
decodingDelimiter - The line delimeter for the decoder

TextLineCodecFactory

public TextLineCodecFactory(Charset charset,
                            LineDelimiter encodingDelimiter,
                            LineDelimiter decodingDelimiter)
Creates a new instance of TextLineCodecFactory. This constructor provides more flexibility for the developer.

Parameters:
charset - The charset to use in the encoding and decoding
encodingDelimiter - The line delimeter for the encoder
decodingDelimiter - The line delimeter for the decoder
Method Detail

getEncoder

public ProtocolEncoder getEncoder(IoSession session)
Description copied from interface: ProtocolCodecFactory
Returns a new (or reusable) instance of ProtocolEncoder which encodes message objects into binary or protocol-specific data.

Specified by:
getEncoder in interface ProtocolCodecFactory

getDecoder

public ProtocolDecoder getDecoder(IoSession session)
Description copied from interface: ProtocolCodecFactory
Returns a new (or reusable) instance of ProtocolDecoder which decodes binary or protocol-specific data into message objects.

Specified by:
getDecoder in interface ProtocolCodecFactory

getEncoderMaxLineLength

public int getEncoderMaxLineLength()
Returns the allowed maximum size of the encoded line. If the size of the encoded line exceeds this value, the encoder will throw a IllegalArgumentException. The default value is Integer.MAX_VALUE.

This method does the same job with TextLineEncoder.getMaxLineLength().


setEncoderMaxLineLength

public void setEncoderMaxLineLength(int maxLineLength)
Sets the allowed maximum size of the encoded line. If the size of the encoded line exceeds this value, the encoder will throw a IllegalArgumentException. The default value is Integer.MAX_VALUE.

This method does the same job with TextLineEncoder.setMaxLineLength(int).


getDecoderMaxLineLength

public int getDecoderMaxLineLength()
Returns the allowed maximum size of the line to be decoded. If the size of the line to be decoded exceeds this value, the decoder will throw a BufferDataException. The default value is 1024 (1KB).

This method does the same job with TextLineDecoder.getMaxLineLength().


setDecoderMaxLineLength

public void setDecoderMaxLineLength(int maxLineLength)
Sets the allowed maximum size of the line to be decoded. If the size of the line to be decoded exceeds this value, the decoder will throw a BufferDataException. The default value is 1024 (1KB).

This method does the same job with TextLineDecoder.setMaxLineLength(int).



Copyright © 2004-2011 Apache MINA Project. All Rights Reserved.