Store and exchange client minor versions.

These don't affect client visibility.
This commit is contained in:
akwizgran
2018-04-16 17:16:14 +01:00
parent 2e570ba50d
commit 05deaf42e3
18 changed files with 164 additions and 54 deletions

View File

@@ -18,6 +18,7 @@ import dagger.Provides;
import static org.briarproject.briar.api.introduction.IntroductionManager.CLIENT_ID;
import static org.briarproject.briar.api.introduction.IntroductionManager.MAJOR_VERSION;
import static org.briarproject.briar.api.introduction.IntroductionManager.MINOR_VERSION;
@Module
public class IntroductionModule {
@@ -55,7 +56,8 @@ public class IntroductionModule {
validationManager.registerIncomingMessageHook(CLIENT_ID,
MAJOR_VERSION, introductionManager);
conversationManager.registerConversationClient(introductionManager);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION,
MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(CLIENT_ID,
MAJOR_VERSION, introductionManager);
return introductionManager;

View File

@@ -19,6 +19,7 @@ import dagger.Provides;
import static org.briarproject.briar.api.messaging.MessagingManager.CLIENT_ID;
import static org.briarproject.briar.api.messaging.MessagingManager.MAJOR_VERSION;
import static org.briarproject.briar.api.messaging.MessagingManager.MINOR_VERSION;
@Module
public class MessagingModule {
@@ -62,7 +63,8 @@ public class MessagingModule {
validationManager.registerIncomingMessageHook(CLIENT_ID, MAJOR_VERSION,
messagingManager);
conversationManager.registerConversationClient(messagingManager);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION,
MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(CLIENT_ID,
MAJOR_VERSION, messagingManager);
return messagingManager;

View File

@@ -21,6 +21,7 @@ import dagger.Provides;
import static org.briarproject.briar.api.privategroup.invitation.GroupInvitationManager.CLIENT_ID;
import static org.briarproject.briar.api.privategroup.invitation.GroupInvitationManager.MAJOR_VERSION;
import static org.briarproject.briar.api.privategroup.invitation.GroupInvitationManager.MINOR_VERSION;
@Module
public class GroupInvitationModule {
@@ -47,13 +48,15 @@ public class GroupInvitationModule {
contactManager.registerContactHook(groupInvitationManager);
privateGroupManager.registerPrivateGroupHook(groupInvitationManager);
conversationManager.registerConversationClient(groupInvitationManager);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION);
clientVersioningManager.registerClient(CLIENT_ID, MAJOR_VERSION,
MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(CLIENT_ID,
MAJOR_VERSION, groupInvitationManager);
// The group invitation manager handles client visibility changes for
// the private group manager
clientVersioningManager.registerClient(PrivateGroupManager.CLIENT_ID,
PrivateGroupManager.MAJOR_VERSION);
PrivateGroupManager.MAJOR_VERSION,
PrivateGroupManager.MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(
PrivateGroupManager.CLIENT_ID,
PrivateGroupManager.MAJOR_VERSION,

View File

@@ -84,14 +84,15 @@ public class SharingModule {
conversationManager.registerConversationClient(blogSharingManager);
blogManager.registerRemoveBlogHook(blogSharingManager);
clientVersioningManager.registerClient(BlogSharingManager.CLIENT_ID,
BlogSharingManager.MAJOR_VERSION);
BlogSharingManager.MAJOR_VERSION,
BlogSharingManager.MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(
BlogSharingManager.CLIENT_ID, BlogSharingManager.MAJOR_VERSION,
blogSharingManager);
// The blog sharing manager handles client visibility changes for the
// blog manager
clientVersioningManager.registerClient(BlogManager.CLIENT_ID,
BlogManager.MAJOR_VERSION);
BlogManager.MAJOR_VERSION, BlogManager.MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(
BlogManager.CLIENT_ID, BlogManager.MAJOR_VERSION,
blogSharingManager.getShareableClientVersioningHook());
@@ -147,14 +148,15 @@ public class SharingModule {
conversationManager.registerConversationClient(forumSharingManager);
forumManager.registerRemoveForumHook(forumSharingManager);
clientVersioningManager.registerClient(ForumSharingManager.CLIENT_ID,
ForumSharingManager.MAJOR_VERSION);
ForumSharingManager.MAJOR_VERSION,
ForumSharingManager.MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(
ForumSharingManager.CLIENT_ID,
ForumSharingManager.MAJOR_VERSION, forumSharingManager);
// The forum sharing manager handles client visibility changes for the
// forum manager
clientVersioningManager.registerClient(ForumManager.CLIENT_ID,
ForumManager.MAJOR_VERSION);
ForumManager.MAJOR_VERSION, ForumManager.MINOR_VERSION);
clientVersioningManager.registerClientVersioningHook(
ForumManager.CLIENT_ID, ForumManager.MAJOR_VERSION,
forumSharingManager.getShareableClientVersioningHook());