You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/11/02 01:59:28 UTC

svn commit: r591182 - in /mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline: TextLineCodecFactory.java TextLineDecoder.java TextLineEncoder.java

Author: trustin
Date: Thu Nov  1 17:59:27 2007
New Revision: 591182

URL: http://svn.apache.org/viewvc?rev=591182&view=rev
Log:
Added more convenience constructors to the text line codec

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineCodecFactory.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineDecoder.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineEncoder.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineCodecFactory.java?rev=591182&r1=591181&r2=591182&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineCodecFactory.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineCodecFactory.java Thu Nov  1 17:59:27 2007
@@ -35,8 +35,8 @@
  * @version $Rev$, $Date$
  */
 public class TextLineCodecFactory implements ProtocolCodecFactory {
-    private final TextLineEncoder encoder;
 
+    private final TextLineEncoder encoder;
     private final TextLineDecoder decoder;
 
     /**
@@ -57,6 +57,23 @@
     public TextLineCodecFactory(Charset charset) {
         encoder = new TextLineEncoder(charset, LineDelimiter.UNIX);
         decoder = new TextLineDecoder(charset, LineDelimiter.AUTO);
+    }
+
+    /**
+     * Creates a new instance of TextLineCodecFactory.  This constructor
+     * provides more flexibility for the developer.
+     *
+     * @param charset
+     *  The charset to use in the encoding and decoding
+     * @param encodingDelimiter
+     *  The line delimeter for the encoder
+     * @param decodingDelimiter
+     *  The line delimeter for the decoder
+     */
+    public TextLineCodecFactory(Charset charset,
+            String encodingDelimiter, String decodingDelimiter) {
+        encoder = new TextLineEncoder(charset, encodingDelimiter);
+        decoder = new TextLineDecoder(charset, decodingDelimiter);
     }
 
     /**

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineDecoder.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineDecoder.java?rev=591182&r1=591181&r2=591182&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineDecoder.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineDecoder.java Thu Nov  1 17:59:27 2007
@@ -54,7 +54,23 @@
      * and {@link LineDelimiter#AUTO} delimiter.
      */
     public TextLineDecoder() {
-        this(Charset.defaultCharset(), LineDelimiter.AUTO);
+        this(LineDelimiter.AUTO);
+    }
+    
+    /**
+     * Creates a new instance with the current default {@link Charset}
+     * and the specified <tt>delimiter</tt>.
+     */
+    public TextLineDecoder(String delimiter) {
+        this(new LineDelimiter(delimiter));
+    }
+    
+    /**
+     * Creates a new instance with the current default {@link Charset}
+     * and the specified <tt>delimiter</tt>.
+     */
+    public TextLineDecoder(LineDelimiter delimiter) {
+        this(Charset.defaultCharset(), delimiter);
     }
 
     /**
@@ -64,7 +80,15 @@
     public TextLineDecoder(Charset charset) {
         this(charset, LineDelimiter.AUTO);
     }
-
+    
+    /**
+     * Creates a new instance with the spcified <tt>charset</tt>
+     * and the specified <tt>delimiter</tt>.
+     */
+    public TextLineDecoder(Charset charset, String delimiter) {
+        this(charset, new LineDelimiter(delimiter));
+    }
+    
     /**
      * Creates a new instance with the specified <tt>charset</tt>
      * and the specified <tt>delimiter</tt>.

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineEncoder.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineEncoder.java?rev=591182&r1=591181&r2=591182&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineEncoder.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/textline/TextLineEncoder.java Thu Nov  1 17:59:27 2007
@@ -45,18 +45,50 @@
 
     private int maxLineLength = Integer.MAX_VALUE;
 
+    /**
+     * Creates a new instance with the current default {@link Charset}
+     * and {@link LineDelimiter#UNIX} delimiter.
+     */
     public TextLineEncoder() {
         this(Charset.defaultCharset(), LineDelimiter.UNIX);
     }
+    
+    /**
+     * Creates a new instance with the current default {@link Charset}
+     * and the specified <tt>delimiter</tt>.
+     */
+    public TextLineEncoder(String delimiter) {
+        this(new LineDelimiter(delimiter));
+    }
 
+    /**
+     * Creates a new instance with the current default {@link Charset}
+     * and the specified <tt>delimiter</tt>.
+     */
     public TextLineEncoder(LineDelimiter delimiter) {
         this(Charset.defaultCharset(), delimiter);
     }
 
+    /**
+     * Creates a new instance with the spcified <tt>charset</tt>
+     * and {@link LineDelimiter#UNIX} delimiter.
+     */
     public TextLineEncoder(Charset charset) {
         this(charset, LineDelimiter.UNIX);
     }
 
+    /**
+     * Creates a new instance with the spcified <tt>charset</tt>
+     * and the specified <tt>delimiter</tt>.
+     */
+    public TextLineEncoder(Charset charset, String delimiter) {
+        this(charset, new LineDelimiter(delimiter));
+    }
+    
+    /**
+     * Creates a new instance with the spcified <tt>charset</tt>
+     * and the specified <tt>delimiter</tt>.
+     */
     public TextLineEncoder(Charset charset, LineDelimiter delimiter) {
         if (charset == null) {
             throw new NullPointerException("charset");