Files
briar/briar-api/src/org/briarproject/api/Author.java
2014-01-31 17:23:14 +00:00

45 lines
968 B
Java

package org.briarproject.api;
import static org.briarproject.api.AuthorConstants.MAX_AUTHOR_NAME_LENGTH;
/** A pseudonym for a user. */
public class Author {
private final AuthorId id;
private final String name;
private final byte[] publicKey;
public Author(AuthorId id, String name, byte[] publicKey) {
if(name.length() == 0 || name.length() > MAX_AUTHOR_NAME_LENGTH)
throw new IllegalArgumentException();
this.id = id;
this.name = name;
this.publicKey = publicKey;
}
/** Returns the author's unique identifier. */
public AuthorId getId() {
return id;
}
/** Returns the author's name. */
public String getName() {
return name;
}
/** Returns the public key used to verify the pseudonym's signatures. */
public byte[] getPublicKey() {
return publicKey;
}
@Override
public int hashCode() {
return id.hashCode();
}
@Override
public boolean equals(Object o) {
return o instanceof Author && id.equals(((Author) o).id);
}
}