2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Copyright (C) 2017 Amdocs
8 * =============================================================================
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 * ============LICENSE_END=========================================================
25 package org.onap.appc.adapter.netconf.jsch;
27 import java.util.Collections;
28 import java.util.List;
30 import org.onap.appc.adapter.netconf.NetconfConnectionDetails;
31 import org.onap.appc.adapter.netconf.jsch.NetconfClientJsch;
32 import org.onap.appc.exceptions.APPCException;
34 public class TestModifyConfigMock {
36 private static final String HOST = "192.168.1.2";
37 private static final String USER = "test";
38 private static final String PSWD = "test123";
39 private static final int PORT = 830;
40 private static final List<String> CAPABILITIES = Collections.singletonList("<capability>urn:org:onap:appc:capability:1.1.0</capability>");
41 private static final String CONFIG =
42 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
43 "<rpc xmlns=\"urn:ietf:params:xml:ns:netconf:base:1.0\" message-id=\"1\">\n" +
48 " <default-operation>merge</default-operation>\n" +
49 " <config xmlns:xc=\"urn:ietf:params:xml:ns:netconf:base:1.0\">\n" +
50 " <ManagedElement xmlns=\"urn:org.onap.appc:Test\">\n" +
51 " <managedElementId>1</managedElementId>\n" +
52 " <VnfFunction xmlns=\"urn:org:onap:appc:VnfFunction\">\n" +
57 " <realm>example.com</realm>\n" +
58 " <reconnectTimer>60</reconnectTimer>\n" +
62 " </ManagedElement>\n" +
67 public static void main(String[] args) throws APPCException {
69 NetconfConnectionDetails connectionDetails = new NetconfConnectionDetails();
70 connectionDetails.setHost(HOST);
71 connectionDetails.setPort(PORT);
72 connectionDetails.setUsername(USER);
73 connectionDetails.setPassword(PSWD);
74 connectionDetails.setCapabilities(CAPABILITIES);
75 NetconfClientJsch netconfClientJsch = new NetconfClientJsch();
76 netconfClientJsch.connect(connectionDetails);
78 System.out.println("=> Running get configuration...");
79 String configuration = netconfClientJsch.getConfiguration();
80 System.out.println("=> Configuration:\n" + configuration);
82 System.out.println("=> Reconfiguring device...");
83 String outMessage = netconfClientJsch.exchangeMessage(CONFIG);
84 System.out.println("=> Reconfiguration response:\n" + outMessage);
86 System.out.println("=> Running get configuration...");
87 configuration = netconfClientJsch.getConfiguration();
88 System.out.println("=> Configuration:\n" + configuration);
90 netconfClientJsch.disconnect();
92 } catch(Exception e) {