@Override public Command createCommand(HttpServletRequest request, Workspace workspace) { String hNodeId = request.getParameter(Arguments.hNodeId.name()); String hTableId = request.getParameter(Arguments.hTableId.name()); String newColumnName = request.getParameter(Arguments.newColumnName.name()); String worksheetId = request.getParameter(Arguments.worksheetId.name()); String defaultValue = request.getParameter(Arguments.defaultValue.name()); String selectionName = request.getParameter(Arguments.selectionName.name()); return new AddColumnCommand(getNewId(workspace), Command.NEW_MODEL, worksheetId, hTableId, hNodeId, newColumnName, defaultValue, selectionName); }
@Override public Command createCommand(JSONArray inputJson, String model, Workspace workspace) throws JSONException, KarmaException { /** Parse the input arguments and create proper data structures to be passed to the command **/ String hNodeID = CommandInputJSONUtil.getStringValue(Arguments.hNodeId.name(), inputJson); String worksheetId = CommandInputJSONUtil.getStringValue(Arguments.worksheetId.name(), inputJson); String hTableId = CommandInputJSONUtil.getStringValue(Arguments.hTableId.name(), inputJson); String newColumnName = CommandInputJSONUtil.getStringValue(Arguments.newColumnName.name(), inputJson); String defaultValue = CommandInputJSONUtil.getStringValue(Arguments.defaultValue.name(), inputJson); this.normalizeSelectionId(worksheetId, inputJson, workspace); String selectionName = CommandInputJSONUtil.getStringValue(Arguments.selectionName.name(), inputJson); AddColumnCommand colCmd = new AddColumnCommand(getNewId(workspace), model, worksheetId, hTableId, hNodeID, newColumnName, defaultValue, selectionName ); colCmd.setInputParameterJson(inputJson.toString()); return colCmd; }
private JSONArray getAddColumnCommandInputJSON(String hTableId) throws JSONException { JSONArray arr = new JSONArray(); arr.put(CommandInputJSONUtil.createJsonObject(AddColumnCommandFactory.Arguments.newColumnName.name(), newColumnName, ParameterType.other)); arr.put(CommandInputJSONUtil.createJsonObject(AddColumnCommandFactory.Arguments.hTableId.name(), hTableId, ParameterType.other)); arr.put(CommandInputJSONUtil.createJsonObject(AddColumnCommandFactory.Arguments.worksheetId.name(), worksheetId, ParameterType.worksheetId)); arr.put(CommandInputJSONUtil.createJsonObject(AddColumnCommandFactory.Arguments.hNodeId.name(), hNodeId, ParameterType.worksheetId)); return arr; }