2 * Copyright (c) 2014 Pantheon Technologies s.r.o. and others. All rights reserved.
\r
4 * This program and the accompanying materials are made available under the
\r
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
\r
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
\r
9 package org.opendaylight.openflowjava.protocol.impl.core;
\r
11 import org.opendaylight.openflowjava.protocol.api.connection.SwitchConnectionHandler;
\r
12 import org.opendaylight.openflowjava.protocol.api.connection.TlsConfiguration;
\r
13 import org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializationFactory;
\r
14 import org.opendaylight.openflowjava.protocol.impl.serialization.SerializationFactory;
\r
17 * @author michal.polkorab
\r
20 public class ChannelInitializerFactory {
\r
22 private long switchIdleTimeOut;
\r
23 private DeserializationFactory deserializationFactory;
\r
24 private SerializationFactory serializationFactory;
\r
25 private TlsConfiguration tlsConfig;
\r
26 private SwitchConnectionHandler switchConnectionHandler;
\r
29 * @return PublishingChannelInitializer that initializes new channels
\r
31 public TcpChannelInitializer createPublishingChannelInitializer() {
\r
32 TcpChannelInitializer initializer = new TcpChannelInitializer();
\r
33 initializer.setSwitchIdleTimeout(switchIdleTimeOut);
\r
34 initializer.setDeserializationFactory(deserializationFactory);
\r
35 initializer.setSerializationFactory(serializationFactory);
\r
36 initializer.setTlsConfiguration(tlsConfig);
\r
37 initializer.setSwitchConnectionHandler(switchConnectionHandler);
\r
42 * @return PublishingChannelInitializer that initializes new channels
\r
44 public UdpChannelInitializer createUdpChannelInitializer() {
\r
45 UdpChannelInitializer initializer = new UdpChannelInitializer();
\r
46 initializer.setSwitchIdleTimeout(switchIdleTimeOut);
\r
47 initializer.setDeserializationFactory(deserializationFactory);
\r
48 initializer.setSerializationFactory(serializationFactory);
\r
49 initializer.setSwitchConnectionHandler(switchConnectionHandler);
\r
54 * @param switchIdleTimeOut
\r
56 public void setSwitchIdleTimeout(long switchIdleTimeOut) {
\r
57 this.switchIdleTimeOut = switchIdleTimeOut;
\r
61 * @param deserializationFactory
\r
63 public void setDeserializationFactory(DeserializationFactory deserializationFactory) {
\r
64 this.deserializationFactory = deserializationFactory;
\r
68 * @param serializationFactory
\r
70 public void setSerializationFactory(SerializationFactory serializationFactory) {
\r
71 this.serializationFactory = serializationFactory;
\r
77 public void setTlsConfig(TlsConfiguration tlsConfig) {
\r
78 this.tlsConfig = tlsConfig;
\r
82 * @param switchConnectionHandler
\r
84 public void setSwitchConnectionHandler(SwitchConnectionHandler switchConnectionHandler) {
\r
85 this.switchConnectionHandler = switchConnectionHandler;
\r