/*
- * Sone - Image.java - Copyright © 2011–2012 David Roden
+ * Sone - Image.java - Copyright © 2011–2013 David Roden
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
import java.util.UUID;
+import com.google.common.hash.Hasher;
+import com.google.common.hash.Hashing;
+
/**
* Container for image metadata.
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
-public class Image implements Fingerprintable {
+public class Image implements Identified, Fingerprintable {
/** The ID of the image. */
private final String id;
*/
@Override
public String getFingerprint() {
- StringBuilder fingerprint = new StringBuilder();
- fingerprint.append("Image(");
- fingerprint.append("ID(").append(id).append(')');
- fingerprint.append("Title(").append(title).append(')');
- fingerprint.append("Description(").append(description).append(')');
- fingerprint.append(')');
- return fingerprint.toString();
+ Hasher hash = Hashing.sha256().newHasher();
+ hash.putString("Image(");
+ hash.putString("ID(").putString(id).putString(")");
+ hash.putString("Title(").putString(title).putString(")");
+ hash.putString("Description(").putString(description).putString(")");
+ hash.putString(")");
+ return hash.hash().toString();
}
//