X-Git-Url: http://jaekl.net/gitweb/?p=cfb.git;a=blobdiff_plain;f=prod%2Fnet%2Fjaekl%2Fcfb%2Fanalyze%2FAnalysis.java;h=81f4b89bad189a0722e89a2c28d3ebdd99d9636f;hp=4e289e2366c4816a679dd0b39019b118b90fb2b7;hb=2769cf82ccae57ee3716aecc9bd694be1f115d92;hpb=5bc9bbe3fd54b9fc7aa3b92d2d37e95c41b9645a diff --git a/prod/net/jaekl/cfb/analyze/Analysis.java b/prod/net/jaekl/cfb/analyze/Analysis.java index 4e289e2..81f4b89 100644 --- a/prod/net/jaekl/cfb/analyze/Analysis.java +++ b/prod/net/jaekl/cfb/analyze/Analysis.java @@ -2,46 +2,62 @@ package net.jaekl.cfb.analyze; // Copyright (C) 2015 Christian Jaekl -import java.io.File; -import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.PrintWriter; +import java.util.Date; + +import net.jaekl.cfb.xml.BugCollection; +import net.jaekl.qd.xml.ParseErrorHandler; +import net.jaekl.qd.xml.ParseHandler; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; import org.xml.sax.helpers.XMLReaderFactory; -import net.jaekl.cfb.xml.BugCollection; -import net.jaekl.qd.util.InputStreamWrapper; -import net.jaekl.qd.xml.ParseErrorHandler; -import net.jaekl.qd.xml.ParseHandler; - public class Analysis { + long m_id; BugCollection m_bugCollection; + String m_projectName; + String m_buildNumber; + long m_start; // Date.getTime() when analysis was started + long m_end; - public Analysis() { + public Analysis(String projectName, String buildNumber) { + m_id = (-1); m_bugCollection = null; + m_projectName = projectName; + m_buildNumber = buildNumber; + m_start = new Date().getTime(); + m_end = 0; } public BugCollection getBugCollection() { return m_bugCollection; } + public long getId() { return m_id; } + public String getProjectName() { return m_projectName; } + public String getBuildNumber() { return m_buildNumber; } + public Date getStart() { return new Date(m_start); } + public Date getEnd() { return (0 == m_end ? null : new Date(m_end)); } // the end time (when FindBugs was done analyzing) + + public void setBugCollection(BugCollection bugs) { m_bugCollection = bugs; } + public void setId(long id) { m_id = id; } + public void setStart(Date start) { m_start = start.getTime(); } + public void setEnd(Date date) { m_end = date.getTime(); } - public void parse(File xml) throws FileNotFoundException, IOException, SAXException + public void parse(InputSource xml) throws FileNotFoundException, IOException, SAXException { m_bugCollection = new BugCollection(); - try (InputStreamWrapper isw = new InputStreamWrapper(new FileInputStream(xml))) - { - XMLReader reader = XMLReaderFactory.createXMLReader(); - ParseHandler ph = new ParseHandler(m_bugCollection); - ParseErrorHandler peh = new ParseErrorHandler(); - reader.setContentHandler(ph); - reader.setErrorHandler(peh); - reader.parse(new InputSource(isw)); - } + XMLReader reader = XMLReaderFactory.createXMLReader(); + ParseHandler ph = new ParseHandler(m_bugCollection); + ParseErrorHandler peh = new ParseErrorHandler(); + reader.setContentHandler(ph); + reader.setErrorHandler(peh); + reader.parse(xml); } + public void dump(PrintWriter pw) { if (null != m_bugCollection) {