2 * Copyright (c) 2013 Cisco Systems, Inc. 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
8 package org.opendaylight.netconf.api;
10 import io.netty.channel.ChannelFuture;
11 import java.io.Closeable;
14 * Protocol Session represents the finite state machine in underlying protocol, including timers and its purpose is to
15 * create a connection between server and client. Session is automatically started, when TCP connection is created, but
16 * can be stopped manually. If the session is up, it has to redirect messages to/from user. Handles also malformed
17 * messages and unknown requests.
20 * This interface should be implemented by a final class representing a protocol specific session.
22 public interface NetconfSession extends Closeable {
24 ChannelFuture sendMessage(NetconfMessage message);