blob: a1d4d7492ff149e6c4e2443908f080b4ace42f9a [file] [log] [blame]
gyewan.an91d7e7e2019-01-17 15:12:48 +09001/*
2 * Copyright 2018-present Open Networking Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.netconf;
17
18/**
19 * Abstract interface for the implementation of proxy message handler.
20 */
21public interface NetconfProxyMessageHandler {
22 /**
23 * Will decode the message on case basis and
24 * call the actual method in Netconf Session implementation bound to secure transport.
25 * @param proxyMessage incoming proxy message
26 * @param <T> return type
27 * @return the value returned by session call
28 * @throws NetconfException netconf exception
29 */
30 <T> T handleIncomingMessage(NetconfProxyMessage proxyMessage) throws NetconfException;
31}