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;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.system.rev130927.SwitchIdleEvent;
20 public interface ConnectionConfiguration {
23 * @return address to bind, if null, all available interfaces will be used
25 InetAddress getAddress();
28 * @return port to bind
33 * @return transport protocol to use
35 Object getTransferProtocol();
38 * @return TLS configuration object
40 TlsConfiguration getTlsConfiguration();
43 * @return silence time (in milliseconds) - after this time {@link SwitchIdleEvent} message is sent upstream
45 long getSwitchIdleTimeout();
48 * @return seed for {@link SSLEngine}
50 Object getSslContext();
53 * @return thread numbers for TcpHandler's eventloopGroups
55 ThreadConfiguration getThreadConfiguration();