package foundation.io; import foundation.action.Events; import foundation.action.IWorkStep; import foundation.dao.OperatorCode; import foundation.dao.bizlogic.IActionProvider; import foundation.data.object.DataObject; import foundation.io.define.DataIO; import foundation.io.define.IOTask; import foundation.json.IJSONWriter; import foundation.util.ContentBuilder; public class ImportStep implements IWorkStep { private IOTask ioTask; private IActionProvider actionProvider; private Events events; public ImportStep(IOTask ioTask, IActionProvider actionProvider) { this.ioTask = ioTask; this.actionProvider = actionProvider; this.events = new Events("import"); } @Override public IActionProvider createActionProvider() { return actionProvider; } @Override public String getDataName() { DataIO dataIO = ioTask.getDataIO(0); DataObject toObject = dataIO.getToDataObject(); if (toObject == null) { toObject = dataIO.getToTempDataObject(); } return toObject.getDataName(); } @Override public String getOnEventCode() { return "Import"; } @Override public Events getFireEvents() { return events; } @Override public double getTransactionScore() { return 1; } @Override public String getStepName() { return "import"; } @Override public OperatorCode getOperatorCode() { return OperatorCode.Others; } @Override public String getActionParam() { return null; } @Override public String getParam() { return null; } @Override public String getActionName() { return "import"; } @Override public String getMethodName() { return "execIO"; } public IOTask getIoTask() { return ioTask; } @Override public void toString(ContentBuilder result) { result.append("import"); } @Override public void writeJSONBody(IJSONWriter writer) { writer.write("name", "import"); } }