You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by mh...@apache.org on 2007/07/03 03:53:17 UTC

svn commit: r552641 - in /mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux: DemuxingProtocolCodecFactory.java MessageDecoder.java

Author: mheath
Date: Mon Jul  2 18:53:13 2007
New Revision: 552641

URL: http://svn.apache.org/viewvc?view=rev&rev=552641
Log:
Only white space change.  Reformatted according to new coding style.

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/DemuxingProtocolCodecFactory.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/MessageDecoder.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/DemuxingProtocolCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/DemuxingProtocolCodecFactory.java?view=diff&rev=552641&r1=552640&r2=552641
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/DemuxingProtocolCodecFactory.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/DemuxingProtocolCodecFactory.java Mon Jul  2 18:53:13 2007
@@ -60,99 +60,82 @@
  * @see MessageEncoder
  * @see MessageDecoder
  */
-public class DemuxingProtocolCodecFactory implements ProtocolCodecFactory
-{
+public class DemuxingProtocolCodecFactory implements ProtocolCodecFactory {
     private MessageDecoderFactory[] decoderFactories = new MessageDecoderFactory[0];
+
     private MessageEncoderFactory[] encoderFactories = new MessageEncoderFactory[0];
-    
+
     private static final Class<?>[] EMPTY_PARAMS = new Class[0];
 
-    public DemuxingProtocolCodecFactory()
-    {
+    public DemuxingProtocolCodecFactory() {
     }
-    
-    public void register( Class<?> encoderOrDecoderClass )
-    {
-        if( encoderOrDecoderClass == null )
-        {
-            throw new NullPointerException( "encoderOrDecoderClass" );
-        }
-        
-        try
-        {
-            encoderOrDecoderClass.getConstructor( EMPTY_PARAMS );
-        }
-        catch( NoSuchMethodException e )
-        {
-            throw new IllegalArgumentException( "The specifiec class doesn't have a public default constructor." );
+
+    public void register(Class<?> encoderOrDecoderClass) {
+        if (encoderOrDecoderClass == null) {
+            throw new NullPointerException("encoderOrDecoderClass");
+        }
+
+        try {
+            encoderOrDecoderClass.getConstructor(EMPTY_PARAMS);
+        } catch (NoSuchMethodException e) {
+            throw new IllegalArgumentException(
+                    "The specifiec class doesn't have a public default constructor.");
         }
 
         boolean registered = false;
-        if( MessageEncoder.class.isAssignableFrom( encoderOrDecoderClass ) )
-        {
-            register( new DefaultConstructorMessageEncoderFactory( encoderOrDecoderClass ) );
+        if (MessageEncoder.class.isAssignableFrom(encoderOrDecoderClass)) {
+            register(new DefaultConstructorMessageEncoderFactory(encoderOrDecoderClass));
             registered = true;
         }
-        
-        if( MessageDecoder.class.isAssignableFrom( encoderOrDecoderClass ) )
-        {
-            register( new DefaultConstructorMessageDecoderFactory( encoderOrDecoderClass ) );
+
+        if (MessageDecoder.class.isAssignableFrom(encoderOrDecoderClass)) {
+            register(new DefaultConstructorMessageDecoderFactory(encoderOrDecoderClass));
             registered = true;
         }
-        
-        if( !registered )
-        {
-            throw new IllegalArgumentException( "Unregisterable type: " + encoderOrDecoderClass );
+
+        if (!registered) {
+            throw new IllegalArgumentException("Unregisterable type: " + encoderOrDecoderClass);
         }
     }
 
-    
-    public void register( MessageEncoder encoder )
-    {
-        register( new SingletonMessageEncoderFactory( encoder ) );
-    }
-    
-    public void register( MessageEncoderFactory factory )
-    {
-        if( factory == null )
-        {
-            throw new NullPointerException( "factory" );
+    public void register(MessageEncoder encoder) {
+        register(new SingletonMessageEncoderFactory(encoder));
+    }
+
+    public void register(MessageEncoderFactory factory) {
+        if (factory == null) {
+            throw new NullPointerException("factory");
         }
         MessageEncoderFactory[] encoderFactories = this.encoderFactories;
-        MessageEncoderFactory[] newEncoderFactories = new MessageEncoderFactory[ encoderFactories.length + 1 ];
-        System.arraycopy( encoderFactories, 0, newEncoderFactories, 0, encoderFactories.length );
-        newEncoderFactories[ encoderFactories.length ] = factory;
+        MessageEncoderFactory[] newEncoderFactories = new MessageEncoderFactory[encoderFactories.length + 1];
+        System.arraycopy(encoderFactories, 0, newEncoderFactories, 0, encoderFactories.length);
+        newEncoderFactories[encoderFactories.length] = factory;
         this.encoderFactories = newEncoderFactories;
     }
-    
-    public void register( MessageDecoder decoder )
-    {
-        register( new SingletonMessageDecoderFactory( decoder ) );
-    }
-    
-    public void register( MessageDecoderFactory factory )
-    {
-        if( factory == null )
-        {
-            throw new NullPointerException( "factory" );
+
+    public void register(MessageDecoder decoder) {
+        register(new SingletonMessageDecoderFactory(decoder));
+    }
+
+    public void register(MessageDecoderFactory factory) {
+        if (factory == null) {
+            throw new NullPointerException("factory");
         }
         MessageDecoderFactory[] decoderFactories = this.decoderFactories;
-        MessageDecoderFactory[] newDecoderFactories = new MessageDecoderFactory[ decoderFactories.length + 1 ];
-        System.arraycopy( decoderFactories, 0, newDecoderFactories, 0, decoderFactories.length );
-        newDecoderFactories[ decoderFactories.length ] = factory;
+        MessageDecoderFactory[] newDecoderFactories = new MessageDecoderFactory[decoderFactories.length + 1];
+        System.arraycopy(decoderFactories, 0, newDecoderFactories, 0, decoderFactories.length);
+        newDecoderFactories[decoderFactories.length] = factory;
         this.decoderFactories = newDecoderFactories;
     }
-    
-    public ProtocolEncoder getEncoder() throws Exception
-    {
+
+    public ProtocolEncoder getEncoder() throws Exception {
         return new ProtocolEncoderImpl();
     }
 
-    public ProtocolDecoder getDecoder() throws Exception
-    {
+    public ProtocolDecoder getDecoder() throws Exception {
         return new ProtocolDecoderImpl();
     }
-    
+
     /**
      * Implement this method to release all resources acquired to perform
      * encoding and decoding messages for the specified <tt>session</tt>.
@@ -160,84 +143,72 @@
      * 
      * @param session the session that requires resource deallocation now
      */
-    protected void disposeCodecResources( IoSession session )
-    {
+    protected void disposeCodecResources(IoSession session) {
         // Do nothing by default; let users implement it as they want.
-        
+
         // This statement is just to avoid compiler warning.  Please ignore. 
         session.getTransportType();
     }
-    
-    private class ProtocolEncoderImpl implements ProtocolEncoder
-    {
+
+    private class ProtocolEncoderImpl implements ProtocolEncoder {
         private final Map<Class<?>, MessageEncoder> encoders = new IdentityHashMap<Class<?>, MessageEncoder>();
-        
-        private ProtocolEncoderImpl() throws Exception
-        {
+
+        private ProtocolEncoderImpl() throws Exception {
             MessageEncoderFactory[] encoderFactories = DemuxingProtocolCodecFactory.this.encoderFactories;
-            for( int i = encoderFactories.length - 1; i >= 0; i-- )
-            {
-                MessageEncoder encoder = encoderFactories[ i ].getEncoder();
+            for (int i = encoderFactories.length - 1; i >= 0; i--) {
+                MessageEncoder encoder = encoderFactories[i].getEncoder();
                 Set<Class<?>> messageTypes = encoder.getMessageTypes();
                 if (messageTypes == null) {
-                    throw new IllegalStateException(
-                            encoder.getClass().getName() + "#getMessageTypes() may not return null.");
+                    throw new IllegalStateException(encoder.getClass().getName()
+                            + "#getMessageTypes() may not return null.");
                 }
-                
+
                 Iterator<Class<?>> it = messageTypes.iterator();
-                while( it.hasNext() )
-                {
+                while (it.hasNext()) {
                     Class<?> type = it.next();
-                    encoders.put( type, encoder );
+                    encoders.put(type, encoder);
                 }
             }
         }
-        
-        public void encode( IoSession session, Object message,
-                            ProtocolEncoderOutput out ) throws Exception
-        {
+
+        public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws Exception {
             Class<?> type = message.getClass();
-            MessageEncoder encoder = findEncoder( type );
-            if( encoder == null )
-            {
-                throw new ProtocolEncoderException( "Unexpected message type: " + type );
-            }
-            
-            encoder.encode( session, message, out );
-        }
-        
-        private MessageEncoder findEncoder( Class<?> type )
-        {
-            MessageEncoder encoder = encoders.get( type );
-            if( encoder == null )
-            {
-                encoder = findEncoder( type, new IdentityHashSet<Class<?>>() );
+            MessageEncoder encoder = findEncoder(type);
+            if (encoder == null) {
+                throw new ProtocolEncoderException("Unexpected message type: " + type);
+            }
+
+            encoder.encode(session, message, out);
+        }
+
+        private MessageEncoder findEncoder(Class<?> type) {
+            MessageEncoder encoder = encoders.get(type);
+            if (encoder == null) {
+                encoder = findEncoder(type, new IdentityHashSet<Class<?>>());
             }
 
             return encoder;
         }
 
-        private MessageEncoder findEncoder( Class<?> type, Set<Class<?>> triedClasses )
-        {
+        private MessageEncoder findEncoder(Class<?> type, Set<Class<?>> triedClasses) {
             MessageEncoder encoder;
 
-            if( triedClasses.contains( type ) ) {
+            if (triedClasses.contains(type)) {
                 return null;
             }
-            triedClasses.add( type );
+            triedClasses.add(type);
 
-            encoder = encoders.get( type );
-            if( encoder == null )
-            {
-                encoder = findEncoder( type, triedClasses );
-                if( encoder != null ) {
+            encoder = encoders.get(type);
+            if (encoder == null) {
+                encoder = findEncoder(type, triedClasses);
+                if (encoder != null) {
                     return encoder;
                 }
 
                 Class<?>[] interfaces = type.getInterfaces();
                 for (Class<?> element : interfaces) {
-                    encoder = findEncoder( element, triedClasses );
-                    if( encoder != null ) {
+                    encoder = findEncoder(element, triedClasses);
+                    if (encoder != null) {
                         return encoder;
                     }
                 }
@@ -248,208 +219,167 @@
             }
         }
 
-        public void dispose( IoSession session ) throws Exception
-        {
-            DemuxingProtocolCodecFactory.this.disposeCodecResources( session );
+        public void dispose(IoSession session) throws Exception {
+            DemuxingProtocolCodecFactory.this.disposeCodecResources(session);
         }
     }
-    
-    private class ProtocolDecoderImpl extends CumulativeProtocolDecoder
-    {
+
+    private class ProtocolDecoderImpl extends CumulativeProtocolDecoder {
         private final MessageDecoder[] decoders;
+
         private MessageDecoder currentDecoder;
 
-        protected ProtocolDecoderImpl() throws Exception
-        {
+        protected ProtocolDecoderImpl() throws Exception {
             MessageDecoderFactory[] decoderFactories = DemuxingProtocolCodecFactory.this.decoderFactories;
-            decoders = new MessageDecoder[ decoderFactories.length ];
-            for( int i = decoderFactories.length - 1; i >= 0; i-- )
-            {
-                decoders[ i ] = decoderFactories[ i ].getDecoder();
+            decoders = new MessageDecoder[decoderFactories.length];
+            for (int i = decoderFactories.length - 1; i >= 0; i--) {
+                decoders[i] = decoderFactories[i].getDecoder();
             }
         }
 
         @Override
-        protected boolean doDecode( IoSession session, ByteBuffer in,
-                                    ProtocolDecoderOutput out ) throws Exception
-        {
-            if( currentDecoder == null )
-            {
+        protected boolean doDecode(IoSession session, ByteBuffer in, ProtocolDecoderOutput out) throws Exception {
+            if (currentDecoder == null) {
                 MessageDecoder[] decoders = this.decoders;
                 int undecodables = 0;
-                for( int i = decoders.length - 1; i >= 0; i -- ) 
-                {
+                for (int i = decoders.length - 1; i >= 0; i--) {
                     MessageDecoder decoder = decoders[i];
                     int limit = in.limit();
                     int pos = in.position();
 
                     MessageDecoderResult result;
-                    try
-                    {
-                        result = decoder.decodable( session, in );
-                    }
-                    finally
-                    {
-                        in.position( pos );
-                        in.limit( limit );
+                    try {
+                        result = decoder.decodable(session, in);
+                    } finally {
+                        in.position(pos);
+                        in.limit(limit);
                     }
-                    
-                    if( result == MessageDecoder.OK )
-                    {
+
+                    if (result == MessageDecoder.OK) {
                         currentDecoder = decoder;
                         break;
-                    }
-                    else if( result == MessageDecoder.NOT_OK )
-                    {
-                        undecodables ++;
-                    }
-                    else if( result != MessageDecoder.NEED_DATA )
-                    {
-                        throw new IllegalStateException( "Unexpected decode result (see your decodable()): " + result );
+                    } else if (result == MessageDecoder.NOT_OK) {
+                        undecodables++;
+                    } else if (result != MessageDecoder.NEED_DATA) {
+                        throw new IllegalStateException("Unexpected decode result (see your decodable()): "
+                                + result);
                     }
                 }
-                
-                if( undecodables == decoders.length )
-                {
+
+                if (undecodables == decoders.length) {
                     // Throw an exception if all decoders cannot decode data.
                     String dump = in.getHexDump();
-                    in.position( in.limit() ); // Skip data
-                    throw new ProtocolDecoderException(
-                            "No appropriate message decoder: " + dump );
+                    in.position(in.limit()); // Skip data
+                    throw new ProtocolDecoderException("No appropriate message decoder: " + dump);
                 }
-                
-                if( currentDecoder == null )
-                {
+
+                if (currentDecoder == null) {
                     // Decoder is not determined yet (i.e. we need more data)
                     return false;
                 }
             }
-            
-            MessageDecoderResult result = currentDecoder.decode( session, in, out );
-            if( result == MessageDecoder.OK )
-            {
+
+            MessageDecoderResult result = currentDecoder.decode(session, in, out);
+            if (result == MessageDecoder.OK) {
                 currentDecoder = null;
                 return true;
-            }
-            else if( result == MessageDecoder.NEED_DATA )
-            {
+            } else if (result == MessageDecoder.NEED_DATA) {
                 return false;
-            }
-            else if( result == MessageDecoder.NOT_OK )
-            {
-                throw new ProtocolDecoderException( "Message decoder returned NOT_OK." );
-            }
-            else
-            {
-                throw new IllegalStateException( "Unexpected decode result (see your decode()): " + result );
+            } else if (result == MessageDecoder.NOT_OK) {
+                throw new ProtocolDecoderException(
+                        "Message decoder returned NOT_OK.");
+            } else {
+                throw new IllegalStateException(
+                        "Unexpected decode result (see your decode()): "
+                                + result);
             }
         }
 
         @Override
-        public void finishDecode( IoSession session, ProtocolDecoderOutput out ) throws Exception
-        {
-            if( currentDecoder == null )
-            {
+        public void finishDecode(IoSession session, ProtocolDecoderOutput out) throws Exception {
+            if (currentDecoder == null) {
                 return;
             }
-            
-            currentDecoder.finishDecode( session, out ); 
+
+            currentDecoder.finishDecode(session, out);
         }
 
         @Override
-        public void dispose( IoSession session ) throws Exception
-        {
-            super.dispose( session );
-            
+        public void dispose(IoSession session) throws Exception {
+            super.dispose(session);
+
             // ProtocolEncoder.dispose() already called disposeCodec(),
             // so there's nothing more we need to do.
         }
     }
-    
-    private static class SingletonMessageEncoderFactory implements MessageEncoderFactory
-    {
+
+    private static class SingletonMessageEncoderFactory implements MessageEncoderFactory {
         private final MessageEncoder encoder;
-        
-        private SingletonMessageEncoderFactory( MessageEncoder encoder )
-        {
-            if( encoder == null )
-            {
-                throw new NullPointerException( "encoder" );
+
+        private SingletonMessageEncoderFactory(MessageEncoder encoder) {
+            if (encoder == null) {
+                throw new NullPointerException("encoder");
             }
             this.encoder = encoder;
         }
 
-        public MessageEncoder getEncoder()
-        {
+        public MessageEncoder getEncoder() {
             return encoder;
         }
     }
 
-    private static class SingletonMessageDecoderFactory implements MessageDecoderFactory
-    {
+    private static class SingletonMessageDecoderFactory implements MessageDecoderFactory {
         private final MessageDecoder decoder;
-        
-        private SingletonMessageDecoderFactory( MessageDecoder decoder )
-        {
-            if( decoder == null )
-            {
-                throw new NullPointerException( "decoder" );
+
+        private SingletonMessageDecoderFactory(MessageDecoder decoder) {
+            if (decoder == null) {
+                throw new NullPointerException("decoder");
             }
             this.decoder = decoder;
         }
 
-        public MessageDecoder getDecoder()
-        {
+        public MessageDecoder getDecoder() {
             return decoder;
         }
     }
 
-    
-    private static class DefaultConstructorMessageEncoderFactory implements MessageEncoderFactory
-    {
+    private static class DefaultConstructorMessageEncoderFactory implements MessageEncoderFactory {
         private final Class<?> encoderClass;
-        
-        private DefaultConstructorMessageEncoderFactory( Class<?> encoderClass )
-        {
-            if( encoderClass == null )
-            {
-                throw new NullPointerException( "encoderClass" );
-            }
-            
-            if( !MessageEncoder.class.isAssignableFrom( encoderClass ) )
-            {
-                throw new IllegalArgumentException( "encoderClass is not assignable to MessageEncoder" );
+
+        private DefaultConstructorMessageEncoderFactory(Class<?> encoderClass) {
+            if (encoderClass == null) {
+                throw new NullPointerException("encoderClass");
+            }
+
+            if (!MessageEncoder.class.isAssignableFrom(encoderClass)) {
+                throw new IllegalArgumentException(
+                        "encoderClass is not assignable to MessageEncoder");
             }
             this.encoderClass = encoderClass;
         }
 
-        public MessageEncoder getEncoder() throws Exception
-        {
-            return ( MessageEncoder ) encoderClass.newInstance();
+        public MessageEncoder getEncoder() throws Exception {
+            return (MessageEncoder) encoderClass.newInstance();
         }
     }
 
-    private static class DefaultConstructorMessageDecoderFactory implements MessageDecoderFactory
-    {
+    private static class DefaultConstructorMessageDecoderFactory implements MessageDecoderFactory {
         private final Class<?> decoderClass;
-        
-        private DefaultConstructorMessageDecoderFactory( Class<?> decoderClass )
-        {
-            if( decoderClass == null )
-            {
-                throw new NullPointerException( "decoderClass" );
-            }
-            
-            if( !MessageDecoder.class.isAssignableFrom( decoderClass ) )
-            {
-                throw new IllegalArgumentException( "decoderClass is not assignable to MessageDecoder" );
+
+        private DefaultConstructorMessageDecoderFactory(Class<?> decoderClass) {
+            if (decoderClass == null) {
+                throw new NullPointerException("decoderClass");
+            }
+
+            if (!MessageDecoder.class.isAssignableFrom(decoderClass)) {
+                throw new IllegalArgumentException(
+                        "decoderClass is not assignable to MessageDecoder");
             }
             this.decoderClass = decoderClass;
         }
 
-        public MessageDecoder getDecoder() throws Exception
-        {
-            return ( MessageDecoder ) decoderClass.newInstance();
+        public MessageDecoder getDecoder() throws Exception {
+            return (MessageDecoder) decoderClass.newInstance();
         }
     }
 }

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/MessageDecoder.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/MessageDecoder.java?view=diff&rev=552641&r1=552640&r2=552641
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/MessageDecoder.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/demux/MessageDecoder.java Mon Jul  2 18:53:13 2007
@@ -53,7 +53,7 @@
      * refer to each method's documentation for detailed explanation.
      */
     static MessageDecoderResult NOT_OK = MessageDecoderResult.NOT_OK;
-    
+
     /**
      * Checks the specified buffer is decodable by this decoder.
      * 
@@ -63,8 +63,8 @@
      *         specified buffer is decodable ({@link #OK}) or not decodable
      *         {@link #NOT_OK}.
      */
-    MessageDecoderResult decodable( IoSession session, ByteBuffer in );
-    
+    MessageDecoderResult decodable(IoSession session, ByteBuffer in);
+
     /**
      * Decodes binary or protocol-specific content into higher-level message objects.
      * MINA invokes {@link #decode(IoSession, ByteBuffer, ProtocolDecoderOutput)}
@@ -77,9 +77,8 @@
      *         
      * @throws Exception if the read data violated protocol specification 
      */
-    MessageDecoderResult decode( IoSession session, ByteBuffer in,
-                                 ProtocolDecoderOutput out ) throws Exception;
-    
+    MessageDecoderResult decode(IoSession session, ByteBuffer in, ProtocolDecoderOutput out) throws Exception;
+
     /**
      * Invoked when the specified <tt>session</tt> is closed while this decoder was
      * parsing the data.  This method is useful when you deal with the protocol which doesn't
@@ -90,5 +89,5 @@
      * 
      * @throws Exception if the read data violated protocol specification
      */
-    void finishDecode( IoSession session, ProtocolDecoderOutput out ) throws Exception;
+    void finishDecode(IoSession session, ProtocolDecoderOutput out) throws Exception;
 }