| 1 19 package edu.umd.cs.findbugs; 20 21 import java.io.IOException ; 22 import java.io.InputStream ; 23 import java.io.OutputStream ; 24 import java.util.Collection ; 25 import java.util.Iterator ; 26 27 import org.dom4j.Document; 28 import org.dom4j.DocumentException; 29 30 import edu.umd.cs.findbugs.model.ClassFeatureSet; 31 import edu.umd.cs.findbugs.xml.XMLOutput; 32 33 public interface BugCollection 34 { 35 static final String ROOT_ELEMENT_NAME = "BugCollection"; 36 static final String SRCMAP_ELEMENT_NAME = "SrcMap"; 37 static final String PROJECT_ELEMENT_NAME = "Project"; 38 static final String ERRORS_ELEMENT_NAME = "Errors"; 39 static final String ANALYSIS_ERROR_ELEMENT_NAME = "AnalysisError"; static final String ERROR_ELEMENT_NAME = "Error"; static final String ERROR_MESSAGE_ELEMENT_NAME = "ErrorMessage"; static final String ERROR_EXCEPTION_ELEMENT_NAME = "Exception"; static final String ERROR_STACK_TRACE_ELEMENT_NAME = "StackTrace"; static final String MISSING_CLASS_ELEMENT_NAME = "MissingClass"; 45 static final String SUMMARY_HTML_ELEMENT_NAME = "SummaryHTML"; 46 static final String APP_CLASS_ELEMENT_NAME = "AppClass"; 47 static final String CLASS_HASHES_ELEMENT_NAME = "ClassHashes"; static final String HISTORY_ELEMENT_NAME = "History"; 50 55 public void setReleaseName(String releaseName); 56 61 public String getReleaseName(); 62 63 66 public ProjectStats getProjectStats(); 67 68 73 public void setTimestamp(long timestamp); 74 75 79 public long getTimestamp(); 80 81 86 public void setAnalysisTimestamp(long timestamp); 87 88 91 public long getAnalysisTimestamp(); 92 93 94 97 98 public AppVersion getAppVersionFromSequenceNumber(long target); 99 100 106 public void setSequenceNumber(long sequence); 107 108 117 public long getSequenceNumber(); 118 119 123 public abstract void clearAppVersions(); 124 129 public void addAppVersion(AppVersion appVersion); 130 131 134 public AppVersion getCurrentAppVersion(); 135 136 139 public Iterator <AppVersion> appVersionIterator(); 140 141 149 public boolean add(BugInstance bugInstance); 150 151 160 public boolean add(BugInstance bugInstance, boolean updateActiveTime); 161 162 171 @Deprecated  172 public BugInstance lookupFromUniqueId(String uniqueId); 173 174 179 public void addError(String message); 180 181 186 public void addError(AnalysisError error); 187 188 193 public void addMissingClass(String message); 194 195 public void setClassFeatureSet(ClassFeatureSet classFeatureSet); 196 197 public void writePrologue(XMLOutput xmlOutput, Project project) throws IOException ; 198 199 public void writeEpilogue(XMLOutput xmlOutput) throws IOException ; 200 201 public void clearClassFeatures(); 202 203 210 public void readXML(String fileName, Project project) 211 throws IOException , DocumentException; 212 213 222 public void readXML(InputStream in, Project project) 223 throws IOException , DocumentException; 224 225 231 public void writeXML(String fileName, Project project) 232 throws IOException ; 233 234 241 public void writeXML(OutputStream out, Project project) throws IOException ; 242 243 256 public void writeXML(XMLOutput xmlOutput, Project project) throws IOException ; 257 258 262 public Iterator <BugInstance> iterator(); 263 264 267 public Collection <BugInstance> getCollection(); 268 269 275 public Document toDocument(Project project); 276 277 282 public BugCollection createEmptyCollectionWithMetadata(); 283 284 287 public void setWithMessages(boolean withMessages); 288 289 292 public boolean getWithMessages(); 293 294 public BugInstance findBug(String instanceHash, String bugType, int lineNumber); 295 296 } 297 | Popular Tags |