The following document contains the results of PMD's CPD 6.55.0.
File | Line |
---|---|
org/apache/shiro/crypto/hash/AbstractHash.java | 229 |
org/apache/shiro/crypto/hash/SimpleHash.java | 406 |
} /** * Returns a hex-encoded string of the underlying {@link #getBytes byte array}. * <p/> * This implementation caches the resulting hex string so multiple calls to this method remain efficient. * However, calling {@link #setBytes setBytes} will null the cached value, forcing it to be recalculated the * next time this method is called. * * @return a hex-encoded string of the underlying {@link #getBytes byte array}. */ @Override public String toHex() { if (this.hexEncoded == null) { this.hexEncoded = Hex.encodeToString(getBytes()); } return this.hexEncoded; } /** * Returns a Base64-encoded string of the underlying {@link #getBytes byte array}. * <p/> * This implementation caches the resulting Base64 string so multiple calls to this method remain efficient. * However, calling {@link #setBytes setBytes} will null the cached value, forcing it to be recalculated the * next time this method is called. * * @return a Base64-encoded string of the underlying {@link #getBytes byte array}. */ @Override public String toBase64() { if (this.base64Encoded == null) { //cache result in case this method is called multiple times. this.base64Encoded = Base64.encodeToString(getBytes()); } return this.base64Encoded; } /** * Simple implementation that merely returns {@link #toHex() toHex()}. * * @return the {@link #toHex() toHex()} value. */ @Override public String toString() { return toHex(); } /** * Returns {@code true} if the specified object is a Hash and its {@link #getBytes byte array} is identical to * this Hash's byte array, {@code false} otherwise. * * @param o the object (Hash) to check for equality. * @return {@code true} if the specified object is a Hash and its {@link #getBytes byte array} is identical to * this Hash's byte array, {@code false} otherwise. */ @Override public boolean equals(Object o) { if (o instanceof Hash) { Hash other = (Hash) o; return MessageDigest.isEqual(getBytes(), other.getBytes()); } return false; } /** * Simply returns toHex().hashCode(); * * @return toHex().hashCode() */ @Override public int hashCode() { if (this.bytes == null || this.bytes.length == 0) { return 0; } return Arrays.hashCode(this.bytes); } } |