X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.specs%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fprocess%2FSlcExecutionStep.java;h=115ccf871693dd73a288f2dcc9a5ae05db395897;hb=aa7186934987661f592d3338c120385b76d7ccee;hp=54e363efbbe8d50bb97682eb9594297392032346;hpb=fb3193e4e860ef199a47cd18fa536e37a0a1d82b;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/process/SlcExecutionStep.java b/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/process/SlcExecutionStep.java index 54e363efb..115ccf871 100644 --- a/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/process/SlcExecutionStep.java +++ b/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/process/SlcExecutionStep.java @@ -1,31 +1,35 @@ package org.argeo.slc.process; -import java.io.IOException; -import java.io.StringReader; -import java.io.StringWriter; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.StringTokenizer; import java.util.UUID; -import org.apache.commons.io.IOUtils; - public class SlcExecutionStep { + public final static String TYPE_START = "START"; + public final static String TYPE_END = "END"; + public final static String TYPE_PHASE_START = "PHASE_START"; + public final static String TYPE_PHASE_END = "PHASE_END"; public final static String TYPE_LOG = "LOG"; - private String uuid; + private String uuid = UUID.randomUUID().toString(); private String type; - private Date begin; + private Date begin = new Date(); private List logLines = new ArrayList(); /** Empty constructor */ public SlcExecutionStep() { } + /** Creates a step of type LOG. */ public SlcExecutionStep(String log) { - this.type = TYPE_LOG; - this.begin = new Date(); - this.uuid = UUID.randomUUID().toString(); + this(TYPE_LOG, log); + } + + /** Creates a step of the given type. */ + public SlcExecutionStep(String type, String log) { + this.type = type; addLog(log); } @@ -61,23 +65,13 @@ public class SlcExecutionStep { this.logLines = logLines; } - public String logAsString() { - StringWriter writer = new StringWriter(); - String log = writer.toString(); - IOUtils.closeQuietly(writer); - return log; - } - public void addLog(String log) { if (log == null) return; - try { - List lines = IOUtils.readLines(new StringReader(log)); - logLines.addAll(lines); - } catch (IOException e) { - throw new RuntimeException("Cannot add log", e); - } + StringTokenizer st = new StringTokenizer(log, "\n"); + while (st.hasMoreTokens()) + logLines.add(st.nextToken()); } @Override