17a9cdd005a09826da0166c10765750690ae0e1e
[appc.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * APPC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * Copyright (C) 2017 Amdocs
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  * 
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  * 
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
21  */
22
23 package org.openecomp.appc.adapter.netconf;
24
25 import org.openecomp.appc.exceptions.APPCException;
26
27
28
29 public interface NetconfClientRestconf {
30
31     /*
32     mount device to controller
33      @param deviceMountPointName - the name of the mounting point in controller
34      @param payload - json data describing device info
35      */
36     void connect(String deviceMountPointName, String payload) throws APPCException;
37
38     /*
39     check connection to device
40     @param deviceMountPointName - the name of the mounting point in controller
41      */
42     boolean checkConnection(String deviceMountPointName) throws APPCException;
43
44     /*
45         send configuration to Netconf server
46          @param configuration - xml configuration payload
47          @param deviceMountPointName - the name of the mounting point in controller
48          @param moduleName - name of the yang model
49          @param nodeName - name of the node created in server
50         */
51     void configure(String configuration, String deviceMountPointName, String moduleName, String nodeName) throws APPCException;
52
53     /*
54         returns configuration of Netconf server
55          @param deviceMountPointName - the name of the mounting point in controller
56          @param moduleName - name of the yang model
57          @param nodeName - name of the node created in server
58         */
59     String getConfiguration(String deviceName, String moduleName, String nodeName) throws APPCException;
60
61     /*
62     unmount device
63      @param deviceMountPointName - the name of the mounting point in controller
64      */
65     void disconnect(String deviceMountPointName) throws APPCException;
66 }