2  * ============LICENSE_START=======================================================
 
   4  * ================================================================================
 
   5  * Copyright (C) 2017 AT&T Intellectual Property. All rights
 
   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
 
  12  *      http://www.apache.org/licenses/LICENSE-2.0
 
  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=========================================================
 
  22 package org.openecomp.appc.adapter.netconf.jsch;
 
  24 import java.util.Collections;
 
  25 import java.util.List;
 
  27 import org.openecomp.appc.adapter.netconf.NetconfConnectionDetails;
 
  28 import org.openecomp.appc.adapter.netconf.jsch.NetconfClientJsch;
 
  29 import org.openecomp.appc.exceptions.APPCException;
 
  31 public class TestModifyConfigRouterMock {
 
  33     private static final String HOST = "10.147.27.50"; // yuma netconf simulator
 
  34     private static final int PORT = 830;
 
  35     private static final String USER = "admin";
 
  36     private static final String PSWD = "admin";
 
  37     private static final List<String> CAPABILITIES = Collections.emptyList();
 
  38     private static final String CONFIG =
 
  39             "<rpc message-id=\"101\" xmlns=\"urn:ietf:params:xml:ns:netconf:base:1.0\">\n" +
 
  44             "    <config xmlns:xc=\"urn:ietf:params:xml:ns:netconf:base:1.0\">\n" +
 
  45             "      <router xmlns=\"urn:sdnhub:odl:tutorial:router\">\n" +
 
  47             "          <process-id>1</process-id>\n" +
 
  49             "            <subnet-ip>100.100.100.0/24</subnet-ip>\n" +
 
  50             "            <area-id>10</area-id>\n" +
 
  54             "          <as-number>1000</as-number>\n" +
 
  55             "          <router-id>10.10.1.1</router-id>\n" +
 
  57             "            <as-number>2000</as-number>\n" +
 
  58             "            <peer-ip>10.10.1.2</peer-ip>\n" +
 
  66     public static void main(String[] args) throws APPCException {
 
  68             NetconfConnectionDetails connectionDetails = new NetconfConnectionDetails();
 
  69             connectionDetails.setHost(HOST);
 
  70             connectionDetails.setPort(PORT);
 
  71             connectionDetails.setUsername(USER);
 
  72             connectionDetails.setPassword(PSWD);
 
  73             connectionDetails.setCapabilities(CAPABILITIES);
 
  74             NetconfClientJsch netconfClientJsch = new NetconfClientJsch();
 
  75             netconfClientJsch.connect(connectionDetails);
 
  77                 System.out.println("=> Running get configuration...");
 
  78                 String configuration = netconfClientJsch.getConfiguration();
 
  79                 System.out.println("=> Configuration:\n" + configuration);
 
  81                 System.out.println("=> Reconfiguring device...");
 
  82                 String outMessage = netconfClientJsch.exchangeMessage(CONFIG);
 
  83                 System.out.println("=> Reconfiguration response:\n" + outMessage);
 
  85                 netconfClientJsch.disconnect();
 
  87         } catch(Exception e) {