in taverna-scufl2-t2flow/src/main/java/org/apache/taverna/scufl2/translator/t2flow/defaultactivities/SpreadsheetActivityParser.java [65:110]
public Configuration parseConfiguration(T2FlowParser t2FlowParser, ConfigBean configBean,
ParserState parserState) throws ReaderException {
SpreadsheetImportConfig config = unmarshallConfig(t2FlowParser, configBean, "xstream",
SpreadsheetImportConfig.class);
Configuration configuration = new Configuration();
configuration.setParent(parserState.getCurrentProfile());
ObjectNode json = (ObjectNode) configuration.getJson();
configuration.setType(ACTIVITY_URI.resolve("#Config"));
ObjectNode columnRange = json.objectNode();
json.put("columnRange", columnRange);
makeRange(config.getColumnRange(), columnRange);
ObjectNode rowRange = json.objectNode();
json.put("rowRange", rowRange);
makeRange(config.getRowRange(), rowRange);
if (config.getEmptyCellValue() != null)
json.put("emptyCellValue", config.getEmptyCellValue());
ArrayNode columnNames = json.arrayNode();
if (config.getColumnNames() != null && config.getColumnNames().getEntry() != null) {
for (SpreadsheetColumnNameEntry entry : config.getColumnNames().getEntry()) {
ObjectNode mapping = json.objectNode();
columnNames.add(mapping);
mapping.put("column", entry.getString().get(0));
mapping.put("port", entry.getString().get(1));
}
if (columnNames.size() > 0)
json.put("columnNames", columnNames);
}
json.put("allRows", config.isAllRows());
json.put("excludeFirstRow", config.isExcludeFirstRow());
json.put("ignoreBlankRows", config.isIgnoreBlankRows());
if (config.getEmptyCellPolicy() != null)
json.put("emptyCellPolicy", config.getEmptyCellPolicy().value());
if (config.getOutputFormat() != null)
json.put("outputFormat", config.getOutputFormat().value());
if (config.getCsvDelimiter() != null)
json.put("csvDelimiter", config.getCsvDelimiter());
return configuration;
}