@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String hNodeId = HistoryJsonUtil.getStringValue(Arguments.hNodeId.name(), inputJson); String worksheetId = HistoryJsonUtil.getStringValue(Arguments.worksheetId.name(), inputJson); String extractionURL = HistoryJsonUtil.getStringValue(Arguments.extractionURL.name(), inputJson); String entitiesToBeExt = HistoryJsonUtil.getStringValue(Arguments.entitiesToBeExt.name(), inputJson); String selectionName = HistoryJsonUtil.getStringValue(Arguments.selectionName.name(), inputJson); ExtractEntitiesCommand cmd = new ExtractEntitiesCommand(getNewId(workspace), model, worksheetId, hNodeId, extractionURL, entitiesToBeExt, selectionName); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { boolean show_rdfs_label_first = false; if(HistoryJsonUtil.valueExits(Arguments.show_rdfs_label_first.name(), inputJson)) show_rdfs_label_first = Boolean.parseBoolean(HistoryJsonUtil.getStringValue(Arguments.show_rdfs_label_first.name(), inputJson)); boolean show_rdfs_id_first = false; if(HistoryJsonUtil.valueExits(Arguments.show_rdfs_id_first.name(), inputJson)) show_rdfs_id_first = Boolean.parseBoolean(HistoryJsonUtil.getStringValue(Arguments.show_rdfs_id_first.name(), inputJson)); UpdateUIConfigurationCommand cmd = new UpdateUIConfigurationCommand(getNewId(workspace), model, show_rdfs_label_first, show_rdfs_id_first); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
public UpdateContainer executeCommandsByTags( List<CommandTag> tagsToAdd, List<CommandTag> tagsToRemove, JSONArray historyJson) throws JSONException, KarmaException, CommandException { JSONArray filteredCommands = HistoryJsonUtil.filterCommandsByTag(tagsToAdd, historyJson); filteredCommands = HistoryJsonUtil.removeCommandsByTag(tagsToRemove, filteredCommands); return executeAllCommands(filteredCommands); }
private String getColumnNameFromInputParams(JSONArray inputParamArr) { String columnName = HistoryJsonUtil.getStringValue("newColumnName", inputParamArr); if ("".equals(columnName)) { JSONArray columnNames = HistoryJsonUtil.getJSONArrayValue("targetHNodeId", inputParamArr); for(int j=0; j<columnNames.length(); j++) { JSONObject columnNameObj = columnNames.getJSONObject(j); columnName =columnNameObj.getString("columnName"); } } return columnName; }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String worksheetId = HistoryJsonUtil.getStringValue( Arguments.worksheetId.name(), inputJson); String alignmentId = AlignmentManager.Instance().constructAlignmentId( workspace.getId(), worksheetId); String literalType = HistoryJsonUtil.getStringValue( Arguments.literalType.name(), inputJson); String language = null; if(HistoryJsonUtil.valueExits(Arguments.language.name(), inputJson)) language = HistoryJsonUtil.getStringValue(Arguments.language.name(), inputJson); String literalValue = HistoryJsonUtil.getStringValue( Arguments.literalValue.name(), inputJson); boolean isUri = HistoryJsonUtil.getBooleanValue(Arguments.isUri.name(), inputJson); String nodeId = null; if(HistoryJsonUtil.valueExits(Arguments.nodeId.name(), inputJson)) nodeId = HistoryJsonUtil.getStringValue(Arguments.nodeId.name(), inputJson); AddLiteralNodeCommand cmd = new AddLiteralNodeCommand(getNewId(workspace), model, worksheetId, alignmentId, nodeId, literalValue, literalType, language, isUri); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
@Override public Pair<ICommand, Object> consolidateCommand(List<ICommand> commands, ICommand newCommand, Workspace workspace) { if (newCommand instanceof SubmitPythonTransformationCommand) { String model = newCommand.getModel(); Iterator<ICommand> itr = commands.iterator(); while(itr.hasNext()) { ICommand tmp = itr.next(); if (((Command)tmp).getOutputColumns().equals(((Command)newCommand).getOutputColumns()) && tmp.getModel().equals(model) && (tmp instanceof AddColumnCommand)) { SubmitPythonTransformationCommand py = ((SubmitPythonTransformationCommand)newCommand); JSONArray inputJSON = new JSONArray(py.getInputParameterJson()); JSONArray tmpInputJSON = new JSONArray(tmp.getInputParameterJson()); String hNodeId = HistoryJsonUtil.getStringValue("hNodeId", tmpInputJSON); HistoryJsonUtil.setArgumentValue("hNodeId", hNodeId, inputJSON); py.setInputParameterJson(inputJSON.toString()); return new ImmutablePair<>(tmp, (Object)py); } } } return null; }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String worksheetId = HistoryJsonUtil.getStringValue( Arguments.worksheetId.name(), inputJson); String alignmentId = AlignmentManager.Instance().constructAlignmentId( workspace.getId(), worksheetId); JSONObject newEdge = HistoryJsonUtil.getJSONObjectWithName( Arguments.edge.name(), inputJson).getJSONObject("value"); AddLinkCommand cmd = new AddLinkCommand( getNewId(workspace), model, worksheetId, alignmentId, newEdge); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
String nodeLabel = HistoryJsonUtil.getStringValue("label", inputParamArr); String node_uri = HistoryJsonUtil.getStringValue("uri", inputParamArr); String node_id = HistoryJsonUtil.getStringValue("id", inputParamArr); StringBuffer pyTransform = new StringBuffer("#### Node: `" + nodeLabel + "`"); pyTransform.append(linebreak); pyTransformMap.put(nodeLabel, pyTransform.toString()); } else if(commandName.equals("AddLiteralNodeCommand")) { String value = HistoryJsonUtil.getStringValue("literalValue", inputParamArr); String literalType = HistoryJsonUtil.getStringValue("literalType", inputParamArr); String language = HistoryJsonUtil.getStringValue("language", inputParamArr); boolean isUri = HistoryJsonUtil.getBooleanValue("isUri", inputParamArr);
public static boolean valueExits(String arg, JSONArray json) throws JSONException { return getJSONObjectWithName(arg, json) != null; }
@Override public Pair<ICommand, Object> consolidateCommand(List<ICommand> commands, ICommand newCommand, Workspace workspace) { if (newCommand instanceof SubmitEditPythonTransformationCommand) { Iterator<ICommand> itr = commands.iterator(); String model = newCommand.getModel(); while(itr.hasNext()) { ICommand tmp = itr.next(); if (((Command)tmp).getOutputColumns().equals(((Command)newCommand).getOutputColumns()) && tmp instanceof SubmitPythonTransformationCommand && !(tmp instanceof SubmitEditPythonTransformationCommand) && model.equals(tmp.getModel())) { SubmitPythonTransformationCommand py = (SubmitPythonTransformationCommand)tmp; SubmitPythonTransformationCommand edit = (SubmitPythonTransformationCommand)newCommand; JSONArray inputJSON = new JSONArray(py.getInputParameterJson()); JSONArray oldInputJSON = new JSONArray(py.getInputParameterJson()); HistoryJsonUtil.setArgumentValue("transformationCode", edit.getTransformationCode(), inputJSON); py.setInputParameterJson(inputJSON.toString()); py.setTransformationCode(edit.getTransformationCode()); return new ImmutablePair<>(tmp, (Object)oldInputJSON); } } } return null; }
if(HistoryJsonUtil.getParameterType(inpP) == ParameterType.hNodeIdList) { JSONArray hnodes = (JSONArray) JSONUtil.createJson(inpP.getString(ClientJsonKeys.value.name())); for (int j = 0; j < hnodes.length(); j++) { } else if(HistoryJsonUtil.getParameterType(inpP) == ParameterType.orderedColumns) { Object tmp = inpP.get(ClientJsonKeys.value.name()); JSONArray hnodes = (JSONArray) JSONUtil.createJson(tmp.toString()); } else if(HistoryJsonUtil.getParameterType(inpP) == ParameterType.hNodeId) { String hNodeId = inpP.getString(ClientJsonKeys.value.name()); HNode node = workspace.getFactory().getHNode(hNodeId); inpP.put(ClientJsonKeys.value.name(), hNodeRepresentation); } else if (HistoryJsonUtil.getParameterType(inpP) == ParameterType.worksheetId) { inpP.put(ClientJsonKeys.value.name(), "W"); } else if(HistoryJsonUtil.getParameterType(inpP) == ParameterType.linkWithHNodeId) { String link = inpP.getString(ClientJsonKeys.value.name()); String[] linkParts = link.split("---"); JSONObject obj = HistoryJsonUtil.getJSONObjectWithName("inputColumns", inputArr); if (obj == null) { obj = new JSONObject(); obj = HistoryJsonUtil.getJSONObjectWithName("outputColumns", inputArr); if (obj == null) { obj = new JSONObject();
private String getFullColumnPath(JSONArray inputParamArr) { //Pedro: throw-away code, ought to have a better way to construct column paths. JSONArray hNodeIdArray = HistoryJsonUtil.getJSONArrayValue("hNodeId", inputParamArr); String invocationColumnName = ""; String sep = ""; for(int j=0; j<hNodeIdArray.length(); j++) { JSONObject columnNameObj = hNodeIdArray.getJSONObject(j); String name =columnNameObj.getString("columnName"); invocationColumnName += sep + name; sep = " / "; } return invocationColumnName; }
public JSONArray readCommandsByTag(List<CommandTag> tag) { JSONArray filteredHistoryJson = new JSONArray(); try { String filename = CommandHistory.getHistorySaver(workspace.getId()).getHistoryFilepath(worksheetId); JSONArray historyJson = CommandHistory.getHistorySaver(workspace.getId()).loadHistory(filename); filteredHistoryJson = HistoryJsonUtil.filterCommandsByTag(tag, historyJson); } catch (JSONException e) { logger.error("Error occured while working with JSON!", e); } catch(Exception e) { logger.error("Error reading from history file!", e); } return filteredHistoryJson; }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String hNodeId = HistoryJsonUtil.getStringValue(Arguments.hNodeId.name(), inputJson); String worksheetId = HistoryJsonUtil.getStringValue(Arguments.worksheetId.name(), inputJson); METAPROPERTY_NAME prop = METAPROPERTY_NAME.valueOf(HistoryJsonUtil.getStringValue(Arguments.metaPropertyName.name(), inputJson)); String propUri, propId; if(HistoryJsonUtil.valueExits(Arguments.metaPropertyUri.name(), inputJson)) { propUri = HistoryJsonUtil.getStringValue(Arguments.metaPropertyUri.name(), inputJson); propId = HistoryJsonUtil.getStringValue(Arguments.metaPropertyId.name(), inputJson); } else { propUri = HistoryJsonUtil.getStringValue(ArgumentsOld.metaPropertyValue.name(), inputJson); propId = propUri; } boolean train = HistoryJsonUtil.getBooleanValue(Arguments.trainAndShowUpdates.name(), inputJson); String rdfLiteralType = HistoryJsonUtil.getStringValue(Arguments.rdfLiteralType.name(), inputJson); String language = null; if(HistoryJsonUtil.valueExits(Arguments.language.name(), inputJson)) language = HistoryJsonUtil.getStringValue(Arguments.language.name(), inputJson); this.normalizeSelectionId(worksheetId, inputJson, workspace); String selectionName = CommandInputJSONUtil.getStringValue(Arguments.selectionName.name(), inputJson); SetMetaPropertyCommand comm = new SetMetaPropertyCommand(getNewId(workspace), model, worksheetId, hNodeId, prop, propUri, propId, train, rdfLiteralType, language, selectionName); comm.setInputParameterJson(inputJson.toString()); return comm; }
JSONArray inputJSON = new JSONArray(command.getInputParameterJson()); JSONArray placeAfterCmdInputJSON = new JSONArray(command.getInputParameterJson()); String placeHNodeId = HistoryJsonUtil.getStringValue("hNodeId", placeAfterCmdInputJSON); HistoryJsonUtil.setArgumentValue("hNodeId", placeHNodeId, inputJSON); command.setInputParameterJson(inputJSON.toString()); worksheetCommandHistory.insertCommandToHistoryAfterCommand(command, placeAfterCmd);
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String worksheetId = HistoryJsonUtil.getStringValue( Arguments.worksheetId.name(), inputJson); String alignmentId = AlignmentManager.Instance().constructAlignmentId( workspace.getId(), worksheetId); JSONArray initialEdges = HistoryJsonUtil.getJSONArrayValue( Arguments.initialEdges.name(), inputJson); JSONArray newEdges = HistoryJsonUtil.getJSONArrayValue( Arguments.newEdges.name(), inputJson); ChangeInternalNodeLinksCommand cmd = new ChangeInternalNodeLinksCommand( getNewId(workspace), model, worksheetId, alignmentId, initialEdges, newEdges); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String worksheetId = HistoryJsonUtil.getStringValue( Arguments.worksheetId.name(), inputJson); String alignmentId = AlignmentManager.Instance().constructAlignmentId( workspace.getId(), worksheetId); JSONObject edge = HistoryJsonUtil.getJSONObjectWithName( Arguments.edge.name(), inputJson).getJSONObject("value");; DeleteLinkCommand cmd = new DeleteLinkCommand( getNewId(workspace), model, worksheetId, alignmentId, edge); cmd.setInputParameterJson(inputJson.toString()); return cmd; }
public static boolean setArgumentValue(String name, Object value, JSONArray inputJson) throws JSONException { JSONObject obj = getJSONObjectWithName(name, inputJson); if(obj != null) { obj.put(ClientJsonKeys.value.name(), value); return true; } return false; }
HistoryJsonUtil.setArgumentValue(Arguments.SemanticTypesArray.name(), typesArr, inputParams); this.setInputParameterJson(inputParams.toString());
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { String worksheetId = HistoryJsonUtil.getStringValue(Arguments.worksheetId.name(), inputJson); String hNodeId = HistoryJsonUtil.getStringValue(Arguments.hNodeId.name(), inputJson); String newColumnName = HistoryJsonUtil.getStringValue(Arguments.newColumnName.name(), inputJson); RenameColumnCommand renCommand = new RenameColumnCommand(getNewId(workspace), model, newColumnName, hNodeId, worksheetId); renCommand.setInputParameterJson(inputJson.toString()); return renCommand; }