Author: davsclaus
Date: Sun May 11 09:33:39 2008
New Revision: 655333

URL: http://svn.apache.org/viewvc?rev=655333&view=rev
Log:
CAMEL-433: better validation when creating an endpoint from uri

Modified:
    
activemq/camel/trunk/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java

Modified: 
activemq/camel/trunk/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java?rev=655333&r1=655332&r2=655333&view=diff
==============================================================================
--- 
activemq/camel/trunk/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java
 (original)
+++ 
activemq/camel/trunk/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java
 Sun May 11 09:33:39 2008
@@ -139,6 +139,7 @@
             acceptorConfig.getFilterChain().addLast("logger", new 
LoggingFilter());
         }
 
+        removeKnownParameters(parameters);
         MinaEndpoint endpoint = new MinaEndpoint(uri, this, address, acceptor, 
acceptorConfig, connector, connectorConfig, lazySessionCreation, timeout, 
transferExchange);
 
         // set sync or async mode after endpoint is created
@@ -174,6 +175,18 @@
         addCodecFactory(config, codecFactory);
     }
 
+    private void removeKnownParameters(Map parameters) {
+        // remove the known parameters this component supports
+        parameters.remove("lazySessionCreation");
+        parameters.remove("timeout");
+        parameters.remove("transferExchange");
+        parameters.remove("sync");
+        parameters.remove("minaLogger");
+        parameters.remove("codec");
+        parameters.remove("textline");
+        parameters.remove("encoding");
+    }
+
     protected MinaEndpoint createDatagramEndpoint(String uri, URI connectUri, 
Map parameters) {
         IoAcceptor acceptor = new DatagramAcceptor();
         SocketAddress address = new InetSocketAddress(connectUri.getHost(), 
connectUri.getPort());
@@ -202,6 +215,7 @@
             acceptorConfig.getFilterChain().addLast("logger", new 
LoggingFilter());
         }
 
+        removeKnownParameters(parameters);
         MinaEndpoint endpoint = new MinaEndpoint(uri, this, address, acceptor, 
acceptorConfig, connector, connectorConfig, lazySessionCreation, timeout, 
transferExchange);
 
         // set sync or async mode after endpoint is created


Reply via email to