Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.net4j.defs/src/org/eclipse/net4j/defs/util/Net4jDefsUtil.java')
-rw-r--r--plugins/org.eclipse.net4j.defs/src/org/eclipse/net4j/defs/util/Net4jDefsUtil.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/plugins/org.eclipse.net4j.defs/src/org/eclipse/net4j/defs/util/Net4jDefsUtil.java b/plugins/org.eclipse.net4j.defs/src/org/eclipse/net4j/defs/util/Net4jDefsUtil.java
new file mode 100644
index 0000000000..7387085e59
--- /dev/null
+++ b/plugins/org.eclipse.net4j.defs/src/org/eclipse/net4j/defs/util/Net4jDefsUtil.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2004 - 2008 André Dietisheim, Switzerland.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * André Dietisheim - initial API and implementation
+ *
+ * $Id: Net4jDefsUtil.java,v 1.1 2008-12-31 14:43:19 estepper Exp $
+ */
+package org.eclipse.net4j.defs.util;
+
+import org.eclipse.net4j.FactoriesProtocolProvider;
+import org.eclipse.net4j.defs.Net4jDefsFactory;
+import org.eclipse.net4j.defs.ProtocolProviderDef;
+import org.eclipse.net4j.defs.TCPConnectorDef;
+import org.eclipse.net4j.protocol.IProtocolProvider;
+import org.eclipse.net4j.tcp.ITCPConnector;
+import org.eclipse.net4j.util.defs.Net4jUtilDefsFactory;
+import org.eclipse.net4j.util.factory.IFactory;
+
+import java.util.Iterator;
+import java.util.List;
+
+public class Net4jDefsUtil
+{
+ /**
+ * Creates the factories protocol provider. The current implementation uses a {@link FactoriesProtocolProvider}.
+ *
+ * @param clientProtocolFactoryDef
+ * the client protocol factory definition
+ * @return the protocol provider
+ */
+ public static <PPD extends ProtocolProviderDef> IProtocolProvider createFactoriesProtocolProvider(
+ List<PPD> protocolFactoryDef)
+ {
+ FactoriesProtocolProvider protocolProvider = new FactoriesProtocolProvider();
+ for (Iterator<PPD> iterator = protocolFactoryDef.iterator(); iterator.hasNext();)
+ {
+ PPD protocolProviderDef = iterator.next();
+ protocolProvider.addFactory((IFactory)protocolProviderDef.getInstance());
+ }
+ return protocolProvider;
+ }
+
+ public static TCPConnectorDef createTCPConnectorDef(final String host)
+ {
+ return createTCPConnectorDef(host, ITCPConnector.DEFAULT_PORT);
+ }
+
+ public static TCPConnectorDef createTCPConnectorDef(final String host, final int port)
+ {
+ TCPConnectorDef tcpConnectorDef = Net4jDefsFactory.eINSTANCE.createTCPConnectorDef();
+
+ tcpConnectorDef.setHost(host);
+ tcpConnectorDef.setPort(port);
+ tcpConnectorDef.setBufferProvider(Net4jDefsFactory.eINSTANCE.createBufferPoolDef());
+ tcpConnectorDef.setExecutorService(Net4jUtilDefsFactory.eINSTANCE.createThreadPoolDef());
+ tcpConnectorDef.setTcpSelectorDef(Net4jDefsFactory.eINSTANCE.createTCPSelectorDef());
+
+ return tcpConnectorDef;
+ }
+}

Back to the top