<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>2.6.3</version>
+ <version>2.9.3</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-yaml</artifactId>
+ <version>2.9.3</version>
</dependency>
</dependencies>
</project>
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVPrinter;
+import org.onap.cli.fw.conf.OnapCommandConstants;
import org.onap.cli.fw.error.OnapCommandOutputPrintingFailed;
import org.onap.cli.fw.output.OnapCommandPrintDirection;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.dataformat.yaml.YAMLMapper;
+
import net.minidev.json.JSONArray;
import net.minidev.json.JSONObject;
-
/**
* Oclip Command Table print.
*
JSONArray array = new JSONArray();
//skip first row title
+ List<Object> titleRow = rows.get(0);
+
for (int i=1; i<rows.size(); i++) {
JSONObject rowO = new JSONObject();
- for (Object col: rows.get(0)) {
- rowO.put(col.toString(), rows.get(i).toString());
+
+ for (int j=0; j<titleRow.size(); j++) {
+ rowO.put(titleRow.get(j).toString(), rows.get(i).get(j).toString());
}
+
array.add(rowO);
}
- return array.toJSONString();
+ JSONObject json = new JSONObject();
+ json.put(OnapCommandConstants.RESULTS, array);
+ return json.toJSONString();
}
- public String printYaml() {
- // (mrkanag) print in yaml
- return null;
+ public String printYaml() throws OnapCommandOutputPrintingFailed {
+ try {
+ return new YAMLMapper().writeValueAsString(new ObjectMapper().readTree(this.printJson()));
+ } catch (JsonProcessingException e) {
+ throw new OnapCommandOutputPrintingFailed(e); // NOSONAR
+ } catch (IOException e) {
+ throw new OnapCommandOutputPrintingFailed(e); // NOSONAR
+ }
}
}
throw new OnapCommandSchemaNotFound(schemaName, e);
}
if (inputStream == null) {
- inputStream = OnapCommandSchemaLoader.loadSchemaFromFile(schemaName);
+ inputStream = loadSchemaFromFile(schemaName);
}
- Map<String, ?> values = OnapCommandSchemaLoader.loadSchema(inputStream, schemaName);
+ Map<String, ?> values = loadSchema(inputStream, schemaName);
String schemaVersion = "";
if (values.keySet().contains(OPEN_CLI_SCHEMA_VERSION)) {
Object obj = values.get(OPEN_CLI_SCHEMA_VERSION);
defaultParameterMap.remove(OnapCommandConstants.INFO);
}
- errors.addAll(OnapCommandSchemaLoader.parseSchema(cmd, defaultParameterMap, validateSchema));
+ errors.addAll(parseSchema(cmd, defaultParameterMap, validateSchema));
}
Map<String, List<Map<String, String>>> commandYamlMap =
(Map<String, List<Map<String, String>>>)validateSchemaVersion(schemaName, cmd.getSchemaVersion());
- errors.addAll(OnapCommandSchemaLoader.parseSchema(cmd, commandYamlMap, validateSchema));
+ errors.addAll(parseSchema(cmd, commandYamlMap, validateSchema));
return errors;
} catch (OnapCommandException e) {
*/
public static Map<String, ?> loadSchema(Resource resource) throws OnapCommandInvalidSchema {
try {
- return OnapCommandSchemaLoader.loadSchema(resource.getInputStream(), resource.getFilename());
+ return loadSchema(resource.getInputStream(), resource.getFilename());
} catch (IOException e) {
throw new OnapCommandInvalidSchema(resource.getFilename(), e);
}