BUG-7529: provide Karaf 4 features
[netconf.git] / netconf / tools / netconf-testtool / src / main / java / org / opendaylight / netconf / test / tool / Main.java
index bffb6f87e0fbc2e5813b04201d2345b797b47fca..befa1dec4dadb88332cde04809a327c945af95fe 100644 (file)
@@ -11,7 +11,6 @@ package org.opendaylight.netconf.test.tool;
 import static com.google.common.base.Preconditions.checkNotNull;
 
 import ch.qos.logback.classic.Level;
-import com.google.common.base.Charsets;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Stopwatch;
 import com.google.common.collect.Lists;
@@ -21,11 +20,11 @@ import com.google.common.io.Files;
 import java.io.File;
 import java.io.FileFilter;
 import java.io.FileInputStream;
-import java.io.FileNotFoundException;
 import java.io.FileWriter;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
@@ -47,15 +46,16 @@ import org.slf4j.LoggerFactory;
 public final class Main {
 
     private static final Logger LOG = LoggerFactory.getLogger(Main.class);
-
+    
     public static void main(final String[] args) {
         final TesttoolParameters params = TesttoolParameters.parseArgs(args, TesttoolParameters.getParser());
         params.validate();
         final ch.qos.logback.classic.Logger root = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
         root.setLevel(params.debug ? Level.DEBUG : Level.INFO);
 
-        final NetconfDeviceSimulator netconfDeviceSimulator = new NetconfDeviceSimulator();
+        final NetconfDeviceSimulator netconfDeviceSimulator = new NetconfDeviceSimulator(params.threadPoolSize);
         try {
+            LOG.debug("Trying to start netconf test-tool with parameters {}", params);
             final List<Integer> openDevices = netconfDeviceSimulator.start(params);
             if (openDevices.size() == 0) {
                 LOG.error("Failed to start any simulated devices, exiting...");
@@ -155,7 +155,7 @@ public final class Main {
 
             try (InputStream stream = Main.class.getResourceAsStream(NETCONF_CONNECTOR_XML)) {
                 checkNotNull(stream, "Cannot load %s", NETCONF_CONNECTOR_XML);
-                String configBlueprint = CharStreams.toString(new InputStreamReader(stream, Charsets.UTF_8));
+                String configBlueprint = CharStreams.toString(new InputStreamReader(stream, StandardCharsets.UTF_8));
 
                 final String before = configBlueprint.substring(0, configBlueprint.indexOf("<module>"));
                 final String middleBlueprint = configBlueprint.substring(configBlueprint.indexOf("<module>"), configBlueprint.indexOf("</module>"));
@@ -184,7 +184,7 @@ public final class Main {
                             b.append(after);
                             final File to = new File(configDir, String.format(SIM_DEVICE_CFG_PREFIX + "%d-%d.xml", batchStart, openDevice));
                             generatedConfigs.add(to);
-                            Files.write(b.toString(), to, Charsets.UTF_8);
+                            Files.write(b.toString(), to, StandardCharsets.UTF_8);
                             connectorCount = 0;
                             b = new StringBuilder();
                             b.append(before);
@@ -198,7 +198,7 @@ public final class Main {
                     b.append(after);
                     final File to = new File(configDir, String.format(SIM_DEVICE_CFG_PREFIX + "%d-%d.xml", batchStart, openDevices.get(openDevices.size() - 1)));
                     generatedConfigs.add(to);
-                    Files.write(b.toString(), to, Charsets.UTF_8);
+                    Files.write(b.toString(), to, StandardCharsets.UTF_8);
                 }
 
                 LOG.info("Config files generated in {}", configDir);
@@ -212,7 +212,7 @@ public final class Main {
         public void updateFeatureFile(final List<File> generated) {
             for (final File fileFeatures : ncFeatureFiles) {
                 try {
-                    final Features f =  JaxbUtil.unmarshal(new FileInputStream(fileFeatures), false);
+                    final Features f =  JaxbUtil.unmarshal(fileFeatures.toURI().toString(), false);
 
                     for (final Feature feature : f.getFeature()) {
                         if (NETCONF_CONNECTOR_ALL_FEATURE.equals(feature.getName())) {