From 031eac54c5f138ddde1c3bdd18c44b1189bdb2bc Mon Sep 17 00:00:00 2001 From: akwizgran Date: Thu, 20 Sep 2018 14:43:19 +0100 Subject: [PATCH] Add private message visitor. --- .../briar/api/blog/BlogInvitationRequest.java | 5 +++ .../api/blog/BlogInvitationResponse.java | 5 +++ .../api/forum/ForumInvitationRequest.java | 5 +++ .../api/forum/ForumInvitationResponse.java | 5 +++ .../api/introduction/IntroductionRequest.java | 6 ++++ .../introduction/IntroductionResponse.java | 5 +++ .../api/messaging/PrivateMessageHeader.java | 3 ++ .../api/messaging/PrivateMessageVisitor.java | 31 +++++++++++++++++++ .../invitation/GroupInvitationRequest.java | 5 +++ .../invitation/GroupInvitationResponse.java | 5 +++ 10 files changed, 75 insertions(+) create mode 100644 briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageVisitor.java diff --git a/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationRequest.java b/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationRequest.java index 9c700727f..1d50cd24f 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationRequest.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationRequest.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.sharing.InvitationRequest; import javax.annotation.Nullable; @@ -19,4 +20,8 @@ public class BlogInvitationRequest extends InvitationRequest { message, available, canBeOpened); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitBlogInvitatioRequest(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationResponse.java b/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationResponse.java index cf3ac3ac8..266382131 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationResponse.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/blog/BlogInvitationResponse.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.sharing.InvitationResponse; @NotNullByDefault @@ -16,4 +17,8 @@ public class BlogInvitationResponse extends InvitationResponse { accept, shareableId); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitBlogInvitationResponse(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationRequest.java b/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationRequest.java index 8d1028a9d..41f9919c5 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationRequest.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationRequest.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.sharing.InvitationRequest; import javax.annotation.Nullable; @@ -21,4 +22,8 @@ public class ForumInvitationRequest extends InvitationRequest { message, available, canBeOpened); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitForumInvitationRequest(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationResponse.java b/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationResponse.java index d0536ca91..1539ba206 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationResponse.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/forum/ForumInvitationResponse.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.sharing.InvitationResponse; import javax.annotation.concurrent.Immutable; @@ -19,4 +20,8 @@ public class ForumInvitationResponse extends InvitationResponse { accept, shareableId); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitForumInvitationResponse(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionRequest.java b/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionRequest.java index 91d52c255..3350ac1b6 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionRequest.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionRequest.java @@ -5,6 +5,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.messaging.PrivateRequest; import javax.annotation.Nullable; @@ -28,4 +29,9 @@ public class IntroductionRequest extends PrivateRequest { public boolean isContact() { return contact; } + + @Override + public void accept(PrivateMessageVisitor v) { + v.visitIntroductionRequest(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionResponse.java b/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionResponse.java index 6ff9d8830..8e26d4bfb 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionResponse.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionResponse.java @@ -5,6 +5,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.messaging.PrivateResponse; import javax.annotation.concurrent.Immutable; @@ -35,4 +36,8 @@ public class IntroductionResponse extends PrivateResponse { return ourRole == INTRODUCER; } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitIntroductionResponse(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageHeader.java b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageHeader.java index 619f0303b..b9f5110a6 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageHeader.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageHeader.java @@ -54,4 +54,7 @@ public class PrivateMessageHeader { return read; } + public void accept(PrivateMessageVisitor v) { + v.visitPrivateMessageHeader(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageVisitor.java b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageVisitor.java new file mode 100644 index 000000000..d1e059745 --- /dev/null +++ b/briar-api/src/main/java/org/briarproject/briar/api/messaging/PrivateMessageVisitor.java @@ -0,0 +1,31 @@ +package org.briarproject.briar.api.messaging; + +import org.briarproject.briar.api.blog.BlogInvitationRequest; +import org.briarproject.briar.api.blog.BlogInvitationResponse; +import org.briarproject.briar.api.forum.ForumInvitationRequest; +import org.briarproject.briar.api.forum.ForumInvitationResponse; +import org.briarproject.briar.api.introduction.IntroductionRequest; +import org.briarproject.briar.api.introduction.IntroductionResponse; +import org.briarproject.briar.api.privategroup.invitation.GroupInvitationRequest; +import org.briarproject.briar.api.privategroup.invitation.GroupInvitationResponse; + +public interface PrivateMessageVisitor { + + void visitPrivateMessageHeader(PrivateMessageHeader h); + + void visitBlogInvitatioRequest(BlogInvitationRequest r); + + void visitBlogInvitationResponse(BlogInvitationResponse r); + + void visitForumInvitationRequest(ForumInvitationRequest r); + + void visitForumInvitationResponse(ForumInvitationResponse r); + + void visitGroupInvitationRequest(GroupInvitationRequest r); + + void visitGroupInvitationResponse(GroupInvitationResponse r); + + void visitIntroductionRequest(IntroductionRequest r); + + void visitIntroductionResponse(IntroductionResponse r); +} diff --git a/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationRequest.java b/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationRequest.java index 8067def68..39c51f159 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationRequest.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationRequest.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.privategroup.PrivateGroup; import org.briarproject.briar.api.sharing.InvitationRequest; @@ -22,4 +23,8 @@ public class GroupInvitationRequest extends InvitationRequest { message, available, canBeOpened); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitGroupInvitationRequest(this); + } } diff --git a/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationResponse.java b/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationResponse.java index 4b260eb62..e74b0c67f 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationResponse.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationResponse.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.bramble.api.sync.MessageId; import org.briarproject.briar.api.client.SessionId; +import org.briarproject.briar.api.messaging.PrivateMessageVisitor; import org.briarproject.briar.api.sharing.InvitationResponse; import javax.annotation.concurrent.Immutable; @@ -19,4 +20,8 @@ public class GroupInvitationResponse extends InvitationResponse { accept, shareableId); } + @Override + public void accept(PrivateMessageVisitor v) { + v.visitGroupInvitationResponse(this); + } }