From d36267f640431e3cc8dc4a2076fb073c133108dd Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Thu, 31 Jul 2014 16:11:20 +0200 Subject: [PATCH] [Minor] extracted ModelStatistics --- .../li/strolch/model/ModelStatistics.java | 50 ++++++++++++++++++ .../strolch/model/xml/XmlModelSaxReader.java | 51 ++----------------- .../model/XmlModelDefaultHandlerTest.java | 3 +- 3 files changed, 55 insertions(+), 49 deletions(-) create mode 100644 src/main/java/li/strolch/model/ModelStatistics.java diff --git a/src/main/java/li/strolch/model/ModelStatistics.java b/src/main/java/li/strolch/model/ModelStatistics.java new file mode 100644 index 000000000..d3a04bd4c --- /dev/null +++ b/src/main/java/li/strolch/model/ModelStatistics.java @@ -0,0 +1,50 @@ +package li.strolch.model; + +import static ch.eitchnet.utils.helper.StringHelper.NULL; + +import java.util.Date; + +import ch.eitchnet.utils.helper.StringHelper; +import ch.eitchnet.utils.iso8601.ISO8601FormatFactory; + +public class ModelStatistics { + + public Date startTime; + public long durationNanos; + public long nrOfResources; + public long nrOfOrders; + + /** + * @return the nrOfOrders + */ + public long getNrOfOrders() { + return this.nrOfOrders; + } + + /** + * @return the nrOfResources + */ + public long getNrOfResources() { + return this.nrOfResources; + } + + public long getNrOfElements() { + return this.nrOfOrders + this.nrOfResources; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append(getClass().getSimpleName() + " [startTime="); + builder.append(this.startTime == null ? NULL : ISO8601FormatFactory.getInstance() + .formatDate(this.startTime)); + builder.append(", durationNanos="); + builder.append(StringHelper.formatNanoDuration(this.durationNanos)); + builder.append(", nrOfResources="); + builder.append(this.nrOfResources); + builder.append(", nrOfOrders="); + builder.append(this.nrOfOrders); + builder.append("]"); + return builder.toString(); + } +} \ No newline at end of file diff --git a/src/main/java/li/strolch/model/xml/XmlModelSaxReader.java b/src/main/java/li/strolch/model/xml/XmlModelSaxReader.java index e1acc9df9..06fe0901b 100644 --- a/src/main/java/li/strolch/model/xml/XmlModelSaxReader.java +++ b/src/main/java/li/strolch/model/xml/XmlModelSaxReader.java @@ -15,13 +15,12 @@ */ package li.strolch.model.xml; -import static ch.eitchnet.utils.helper.StringHelper.NULL; - import java.text.MessageFormat; import java.util.Date; import li.strolch.exception.StrolchException; import li.strolch.model.GroupedParameterizedElement; +import li.strolch.model.ModelStatistics; import li.strolch.model.Order; import li.strolch.model.ParameterBag; import li.strolch.model.Resource; @@ -53,20 +52,20 @@ public class XmlModelSaxReader extends DefaultHandler { protected static final Logger logger = LoggerFactory.getLogger(XmlModelSaxReader.class); protected StrolchElementListener listener; - protected XmlModelStatistics statistics; + protected ModelStatistics statistics; private GroupedParameterizedElement parameterizedElement; private ParameterBag pBag; public XmlModelSaxReader(StrolchElementListener listener) { this.listener = listener; - this.statistics = new XmlModelStatistics(); + this.statistics = new ModelStatistics(); } /** * @return the statistics */ - public XmlModelStatistics getStatistics() { + public ModelStatistics getStatistics() { return this.statistics; } @@ -198,46 +197,4 @@ public class XmlModelSaxReader extends DefaultHandler { throw new IllegalArgumentException(MessageFormat.format("The element ''{0}'' is unhandled!", qName)); //$NON-NLS-1$ } } - - public static class XmlModelStatistics { - - public Date startTime; - public long durationNanos; - public int nrOfResources; - public int nrOfOrders; - - /** - * @return the nrOfOrders - */ - public int getNrOfOrders() { - return this.nrOfOrders; - } - - /** - * @return the nrOfResources - */ - public int getNrOfResources() { - return this.nrOfResources; - } - - public long getNrOfElements() { - return this.nrOfOrders + this.nrOfResources; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("XmlModelStatistics [startTime="); - builder.append(this.startTime == null ? NULL : ISO8601FormatFactory.getInstance() - .formatDate(this.startTime)); - builder.append(", durationNanos="); - builder.append(StringHelper.formatNanoDuration(this.durationNanos)); - builder.append(", nrOfResources="); - builder.append(this.nrOfResources); - builder.append(", nrOfOrders="); - builder.append(this.nrOfOrders); - builder.append("]"); - return builder.toString(); - } - } } diff --git a/src/test/java/li/strolch/model/XmlModelDefaultHandlerTest.java b/src/test/java/li/strolch/model/XmlModelDefaultHandlerTest.java index f6948b6c2..35f299bb9 100644 --- a/src/test/java/li/strolch/model/XmlModelDefaultHandlerTest.java +++ b/src/test/java/li/strolch/model/XmlModelDefaultHandlerTest.java @@ -22,7 +22,6 @@ import java.util.HashMap; import java.util.Map; import li.strolch.model.xml.StrolchElementListener; -import li.strolch.model.xml.XmlModelSaxReader.XmlModelStatistics; import li.strolch.model.xml.XmlModelSaxFileReader; import org.junit.Test; @@ -64,7 +63,7 @@ public class XmlModelDefaultHandlerTest { assertEquals(3, resourceMap.size()); assertEquals(3, orderMap.size()); - XmlModelStatistics statistics = handler.getStatistics(); + ModelStatistics statistics = handler.getStatistics(); logger.info("Parsing took " + StringHelper.formatNanoDuration(statistics.durationNanos)); assertEquals(3, statistics.nrOfOrders); assertEquals(3, statistics.nrOfResources);