added sorting for References via Comparable interface

Former-commit-id: d7522ea20250c771d80f164f631107095c8c12c9
This commit is contained in:
Jeremy Long
2013-04-18 06:29:08 -04:00
parent 99ce04a62f
commit b5c09528d0
2 changed files with 18 additions and 3 deletions

View File

@@ -26,7 +26,7 @@ import java.io.Serializable;
*
* @author Jeremy Long (jeremy.long@gmail.com)
*/
public class Reference implements Serializable {
public class Reference implements Serializable, Comparable<Reference> {
/**
* the serial version uid.
@@ -129,4 +129,19 @@ public class Reference implements Serializable {
return hash;
}
public int compareTo(Reference o) {
if (source.equals(o.source)) {
if (name.equals(o.name)) {
if (url.equals(o.url)) {
return 0; //they are equal
} else {
return url.compareTo(o.url);
}
} else {
return name.compareTo(o.name);
}
} else {
return source.compareTo(o.source);
}
}
}

View File

@@ -82,7 +82,7 @@ public class Vulnerability implements Serializable, Comparable<Vulnerability> {
/**
* References for this vulnerability.
*/
private Set<Reference> references = new HashSet<Reference>();
private SortedSet<Reference> references = new TreeSet<Reference>();
/**
* Get the value of references.
@@ -98,7 +98,7 @@ public class Vulnerability implements Serializable, Comparable<Vulnerability> {
*
* @param references new value of references
*/
public void setReferences(Set<Reference> references) {
public void setReferences(SortedSet<Reference> references) {
this.references = references;
}