Skip to content

Commit

Permalink
Add getDigestString methods
Browse files Browse the repository at this point in the history
  • Loading branch information
tkuhn committed Mar 7, 2018
1 parent 4159533 commit e1bfef0
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions src/main/java/net/trustyuri/rdf/RdfHasher.java
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,19 @@ public static MessageDigest digest(List<Statement> statements) {
return md;
}

public static String getDigestString(List<Statement> statements) {
StringBuilder sb = new StringBuilder();
Collections.sort(statements, new StatementComparator());
Statement previous = null;
for (Statement st : statements) {
if (!st.equals(previous)) {
sb.append(getDigestString(st));
}
previous = st;
}
return sb.toString();
}

public static MessageDigest getDigest() {
MessageDigest md = null;
try {
Expand Down Expand Up @@ -106,6 +119,15 @@ public static void digest(Statement st, MessageDigest md) {
md.update(valueToString(st.getObject()).getBytes());
}

public static String getDigestString(Statement st) {
String s = "";
s += valueToString(st.getContext());
s += valueToString(st.getSubject());
s += valueToString(st.getPredicate());
s += valueToString(st.getObject());
return s;
}

private static String valueToString(Value v) {
if (v instanceof URI) {
return ((URI) v).toString() + "\n";
Expand Down

0 comments on commit e1bfef0

Please sign in to comment.