2 * Copyright (c) 2013 Pantheon Technologies s.r.o. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.openflowjava.protocol.api.connection;
11 import java.net.InetAddress;
13 import javax.net.ssl.SSLEngine;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.system.rev130927.SwitchIdleEvent;
21 public interface ConnectionConfiguration {
24 * @return address to bind, if null, all available interfaces will be used
26 InetAddress getAddress();
29 * @return port to bind
34 * @return transport protocol to use
36 Object getTransferProtocol();
39 * @return TLS configuration object
41 TlsConfiguration getTlsConfiguration();
44 * @return silence time (in milliseconds) - after this time {@link SwitchIdleEvent} message is sent upstream
46 long getSwitchIdleTimeout();
49 * @return seed for {@link SSLEngine}
51 Object getSslContext();
54 * @return thread numbers for TcpHandler's eventloopGroups
56 ThreadConfiguration getThreadConfiguration();