package com.capitalone.dashboard.model; import org.bson.types.ObjectId; import org.springframework.data.mongodb.core.mapping.Document; import java.util.HashSet; import java.util.Set; /** * Represents code quality at a specific point in time. This could include * a unit test run, a security scan, static analysis, functional tests, * manual acceptance tests or bug reports. * * Possible Collectors: * Sonar (in scope) * Fortify * ALM * Various build system test results * */ @Document(collection="code_quality") public class CodeQuality extends BaseModel { private ObjectId collectorItemId; private long timestamp; private String name; private String url; private CodeQualityType type; private String version; private Set<CodeQualityMetric> metrics = new HashSet<>(); public ObjectId getCollectorItemId() { return collectorItemId; } public void setCollectorItemId(ObjectId collectorItemId) { this.collectorItemId = collectorItemId; } public long getTimestamp() { return timestamp; } public void setTimestamp(long timestamp) { this.timestamp = timestamp; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public CodeQualityType getType() { return type; } public void setType(CodeQualityType type) { this.type = type; } public String getVersion() { return version; } public void setVersion(String version) { this.version = version; } public Set<CodeQualityMetric> getMetrics() { return metrics; } }