Contact manager hooks. #209

This commit is contained in:
akwizgran
2016-01-19 19:16:35 +00:00
parent 33ef09a6bf
commit 82cf12040f
29 changed files with 333 additions and 195 deletions

View File

@@ -5,14 +5,37 @@ import org.briarproject.api.identity.AuthorId;
public class Contact {
public enum Status {
ADDING(0), ACTIVE(1), REMOVING(2);
private final int value;
Status(int value) {
this.value = value;
}
public int getValue() {
return value;
}
public static Status fromValue(int value) {
for (Status s : values()) if (s.value == value) return s;
throw new IllegalArgumentException();
}
}
private final ContactId id;
private final Author author;
private final AuthorId localAuthorId;
private final Status status;
public Contact(ContactId id, Author author, AuthorId localAuthorId) {
public Contact(ContactId id, Author author, AuthorId localAuthorId,
Status status) {
this.id = id;
this.author = author;
this.localAuthorId = localAuthorId;
this.status = status;
}
public ContactId getId() {
@@ -27,6 +50,10 @@ public class Contact {
return localAuthorId;
}
public Status getStatus() {
return status;
}
@Override
public int hashCode() {
return id.hashCode();