Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
briar
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Julian Dehm
briar
Commits
05deaf42
Verified
Commit
05deaf42
authored
Apr 16, 2018
by
akwizgran
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Store and exchange client minor versions.
These don't affect client visibility.
parent
2e570ba5
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
164 additions
and
54 deletions
+164
-54
bramble-api/src/main/java/org/briarproject/bramble/api/properties/TransportPropertyManager.java
...ject/bramble/api/properties/TransportPropertyManager.java
+5
-0
bramble-api/src/main/java/org/briarproject/bramble/api/sync/ClientVersioningManager.java
...riarproject/bramble/api/sync/ClientVersioningManager.java
+1
-1
bramble-core/src/main/java/org/briarproject/bramble/properties/PropertiesModule.java
...org/briarproject/bramble/properties/PropertiesModule.java
+3
-1
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersion.java
...ain/java/org/briarproject/bramble/sync/ClientVersion.java
+3
-8
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersioningManagerImpl.java
...riarproject/bramble/sync/ClientVersioningManagerImpl.java
+90
-33
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersioningValidator.java
.../briarproject/bramble/sync/ClientVersioningValidator.java
+5
-3
briar-api/src/main/java/org/briarproject/briar/api/blog/BlogManager.java
...ain/java/org/briarproject/briar/api/blog/BlogManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/blog/BlogSharingManager.java
...a/org/briarproject/briar/api/blog/BlogSharingManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/forum/ForumManager.java
...n/java/org/briarproject/briar/api/forum/ForumManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/forum/ForumSharingManager.java
...org/briarproject/briar/api/forum/ForumSharingManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionManager.java
...arproject/briar/api/introduction/IntroductionManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/messaging/MessagingManager.java
...rg/briarproject/briar/api/messaging/MessagingManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/privategroup/PrivateGroupManager.java
...arproject/briar/api/privategroup/PrivateGroupManager.java
+5
-0
briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationManager.java
...r/api/privategroup/invitation/GroupInvitationManager.java
+5
-0
briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionModule.java
...g/briarproject/briar/introduction/IntroductionModule.java
+3
-1
briar-core/src/main/java/org/briarproject/briar/messaging/MessagingModule.java
...ava/org/briarproject/briar/messaging/MessagingModule.java
+3
-1
briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationModule.java
.../briar/privategroup/invitation/GroupInvitationModule.java
+5
-2
briar-core/src/main/java/org/briarproject/briar/sharing/SharingModule.java
...in/java/org/briarproject/briar/sharing/SharingModule.java
+6
-4
No files found.
bramble-api/src/main/java/org/briarproject/bramble/api/properties/TransportPropertyManager.java
View file @
05deaf42
...
...
@@ -22,6 +22,11 @@ public interface TransportPropertyManager {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the transport property client.
*/
int
MINOR_VERSION
=
0
;
/**
* Stores the given properties received while adding a contact - they will
* be superseded by any properties synced from the contact.
...
...
bramble-api/src/main/java/org/briarproject/bramble/api/sync/ClientVersioningManager.java
View file @
05deaf42
...
...
@@ -25,7 +25,7 @@ public interface ClientVersioningManager {
* Registers a client that will be advertised to contacts. This method
* should be called before {@link LifecycleManager#startServices(String)}.
*/
void
registerClient
(
ClientId
clientId
,
int
majorVersion
);
void
registerClient
(
ClientId
clientId
,
int
majorVersion
,
int
minorVersion
);
/**
* Registers a hook that will be called when the visibility of the given
...
...
bramble-core/src/main/java/org/briarproject/bramble/properties/PropertiesModule.java
View file @
05deaf42
...
...
@@ -17,6 +17,7 @@ import dagger.Provides;
import
static
org
.
briarproject
.
bramble
.
api
.
properties
.
TransportPropertyManager
.
CLIENT_ID
;
import
static
org
.
briarproject
.
bramble
.
api
.
properties
.
TransportPropertyManager
.
MAJOR_VERSION
;
import
static
org
.
briarproject
.
bramble
.
api
.
properties
.
TransportPropertyManager
.
MINOR_VERSION
;
@Module
public
class
PropertiesModule
{
...
...
@@ -51,7 +52,8 @@ public class PropertiesModule {
validationManager
.
registerIncomingMessageHook
(
CLIENT_ID
,
MAJOR_VERSION
,
transportPropertyManager
);
contactManager
.
registerContactHook
(
transportPropertyManager
);
clientVersioningManager
.
registerClient
(
CLIENT_ID
,
MAJOR_VERSION
);
clientVersioningManager
.
registerClient
(
CLIENT_ID
,
MAJOR_VERSION
,
MINOR_VERSION
);
clientVersioningManager
.
registerClientVersioningHook
(
CLIENT_ID
,
MAJOR_VERSION
,
transportPropertyManager
);
return
transportPropertyManager
;
...
...
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersion.java
View file @
05deaf42
...
...
@@ -33,15 +33,10 @@ class ClientVersion implements Comparable<ClientVersion> {
}
@Override
public
int
compareTo
(
ClientVersion
c
)
{
int
compare
=
clientId
.
compareTo
(
c
.
clientId
);
public
int
compareTo
(
ClientVersion
c
v
)
{
int
compare
=
clientId
.
compareTo
(
c
v
.
clientId
);
if
(
compare
!=
0
)
return
compare
;
return
majorVersion
-
c
.
majorVersion
;
}
@Override
public
String
toString
()
{
return
clientId
.
getString
()
+
":"
+
majorVersion
;
return
majorVersion
-
cv
.
majorVersion
;
}
}
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersioningManagerImpl.java
View file @
05deaf42
...
...
@@ -61,7 +61,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
private
final
Clock
clock
;
private
final
Group
localGroup
;
private
final
Collection
<
Client
Version
>
clients
=
private
final
List
<
ClientMinor
Version
>
clients
=
new
CopyOnWriteArrayList
<>();
private
final
Map
<
ClientVersion
,
ClientVersioningHook
>
hooks
=
new
ConcurrentHashMap
<>();
...
...
@@ -79,8 +79,10 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
@Override
public
void
registerClient
(
ClientId
clientId
,
int
majorVersion
)
{
clients
.
add
(
new
ClientVersion
(
clientId
,
majorVersion
));
public
void
registerClient
(
ClientId
clientId
,
int
majorVersion
,
int
minorVersion
)
{
clients
.
add
(
new
ClientMinorVersion
(
clientId
,
majorVersion
,
minorVersion
));
}
@Override
...
...
@@ -124,7 +126,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
@Override
public
void
startService
()
throws
ServiceException
{
List
<
ClientVersion
>
versions
=
new
ArrayList
<>(
clients
);
List
<
Client
Minor
Version
>
versions
=
new
ArrayList
<>(
clients
);
Collections
.
sort
(
versions
);
try
{
Transaction
txn
=
db
.
startTransaction
(
false
);
...
...
@@ -161,7 +163,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
throw
new
AssertionError
(
e
);
}
// Create and store the first local update
List
<
ClientVersion
>
versions
=
new
ArrayList
<>(
clients
);
List
<
Client
Minor
Version
>
versions
=
new
ArrayList
<>(
clients
);
Collections
.
sort
(
versions
);
storeFirstUpdate
(
txn
,
g
.
getId
(),
versions
);
}
...
...
@@ -230,7 +232,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
private
void
storeClientVersions
(
Transaction
txn
,
List
<
ClientVersion
>
versions
)
throws
DbException
{
List
<
Client
Minor
Version
>
versions
)
throws
DbException
{
long
now
=
clock
.
currentTimeMillis
();
BdfList
body
=
encodeClientVersions
(
versions
);
try
{
...
...
@@ -242,30 +244,35 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
}
private
BdfList
encodeClientVersions
(
List
<
ClientVersion
>
versions
)
{
private
BdfList
encodeClientVersions
(
List
<
Client
Minor
Version
>
versions
)
{
BdfList
encoded
=
new
BdfList
();
for
(
Client
Version
cv
:
versions
)
encoded
.
add
(
BdfList
.
of
(
cv
.
clientId
.
getString
(),
cv
.
majorVersion
));
for
(
Client
MinorVersion
cm
:
versions
)
encoded
.
add
(
encodeClientVersion
(
cm
));
return
encoded
;
}
private
BdfList
encodeClientVersion
(
ClientMinorVersion
cm
)
{
return
BdfList
.
of
(
cm
.
version
.
clientId
.
getString
(),
cm
.
version
.
majorVersion
,
cm
.
minorVersion
);
}
private
boolean
updateClientVersions
(
Transaction
txn
,
List
<
ClientVersion
>
newVersions
)
throws
DbException
{
List
<
Client
Minor
Version
>
newVersions
)
throws
DbException
{
Collection
<
MessageId
>
ids
=
db
.
getMessageIds
(
txn
,
localGroup
.
getId
());
if
(
ids
.
isEmpty
())
{
storeClientVersions
(
txn
,
newVersions
);
return
true
;
}
MessageId
m
=
ids
.
iterator
().
next
();
List
<
ClientVersion
>
oldVersions
=
loadClientVersions
(
txn
,
m
);
List
<
Client
Minor
Version
>
oldVersions
=
loadClientVersions
(
txn
,
m
);
if
(
oldVersions
.
equals
(
newVersions
))
return
false
;
db
.
removeMessage
(
txn
,
m
);
storeClientVersions
(
txn
,
newVersions
);
return
true
;
}
private
List
<
Client
Version
>
loadClientVersions
(
Transaction
txn
,
MessageId
m
)
throws
DbException
{
private
List
<
Client
MinorVersion
>
loadClientVersions
(
Transaction
txn
,
MessageId
m
)
throws
DbException
{
try
{
BdfList
body
=
clientHelper
.
getMessageAsList
(
txn
,
m
);
if
(
body
==
null
)
throw
new
DbException
();
...
...
@@ -275,21 +282,23 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
}
private
List
<
ClientVersion
>
parseClientVersions
(
BdfList
body
)
private
List
<
Client
Minor
Version
>
parseClientVersions
(
BdfList
body
)
throws
FormatException
{
int
size
=
body
.
size
();
List
<
ClientVersion
>
parsed
=
new
ArrayList
<>(
size
);
List
<
Client
Minor
Version
>
parsed
=
new
ArrayList
<>(
size
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
BdfList
cv
=
body
.
getList
(
i
);
ClientId
clientId
=
new
ClientId
(
cv
.
getString
(
0
));
int
majorVersion
=
cv
.
getLong
(
1
).
intValue
();
parsed
.
add
(
new
ClientVersion
(
clientId
,
majorVersion
));
int
minorVersion
=
cv
.
getLong
(
2
).
intValue
();
parsed
.
add
(
new
ClientMinorVersion
(
clientId
,
majorVersion
,
minorVersion
));
}
return
parsed
;
}
private
void
clientVersionsUpdated
(
Transaction
txn
,
Contact
c
,
List
<
ClientVersion
>
versions
)
throws
DbException
{
List
<
Client
Minor
Version
>
versions
)
throws
DbException
{
try
{
// Find the latest local and remote updates
Group
g
=
getContactGroup
(
c
);
...
...
@@ -372,11 +381,12 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
private
ClientState
parseClientState
(
BdfList
clientState
)
throws
FormatException
{
// Client ID, major version, active
// Client ID, major version,
minor version,
active
ClientId
clientId
=
new
ClientId
(
clientState
.
getString
(
0
));
int
majorVersion
=
clientState
.
getLong
(
1
).
intValue
();
boolean
active
=
clientState
.
getBoolean
(
2
);
return
new
ClientState
(
clientId
,
majorVersion
,
active
);
int
minorVersion
=
clientState
.
getLong
(
2
).
intValue
();
boolean
active
=
clientState
.
getBoolean
(
3
);
return
new
ClientState
(
clientId
,
majorVersion
,
minorVersion
,
active
);
}
private
long
parseUpdateVersion
(
BdfList
body
)
throws
FormatException
{
...
...
@@ -385,14 +395,15 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
private
List
<
ClientState
>
updateStatesFromLocalVersions
(
List
<
ClientState
>
oldStates
,
List
<
ClientVersion
>
newVersions
)
{
List
<
ClientState
>
oldStates
,
List
<
Client
Minor
Version
>
newVersions
)
{
Map
<
ClientVersion
,
ClientState
>
oldMap
=
new
HashMap
<>();
for
(
ClientState
cs
:
oldStates
)
oldMap
.
put
(
cs
.
version
,
cs
);
List
<
ClientState
>
newStates
=
new
ArrayList
<>(
newVersions
.
size
());
for
(
ClientVersion
newVersion
:
newVersions
)
{
ClientState
oldState
=
oldMap
.
get
(
newVersion
);
for
(
Client
Minor
Version
newVersion
:
newVersions
)
{
ClientState
oldState
=
oldMap
.
get
(
newVersion
.
version
);
boolean
active
=
oldState
!=
null
&&
oldState
.
active
;
newStates
.
add
(
new
ClientState
(
newVersion
,
active
));
newStates
.
add
(
new
ClientState
(
newVersion
.
version
,
newVersion
.
minorVersion
,
active
));
}
return
newStates
;
}
...
...
@@ -420,7 +431,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
private
BdfList
encodeClientState
(
ClientState
cs
)
{
return
BdfList
.
of
(
cs
.
version
.
clientId
.
getString
(),
cs
.
version
.
majorVersion
,
cs
.
active
);
cs
.
version
.
majorVersion
,
cs
.
minorVersion
,
cs
.
active
);
}
private
Map
<
ClientVersion
,
Visibility
>
getVisibilities
(
...
...
@@ -461,10 +472,10 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
private
void
storeFirstUpdate
(
Transaction
txn
,
GroupId
g
,
List
<
ClientVersion
>
versions
)
throws
DbException
{
List
<
Client
Minor
Version
>
versions
)
throws
DbException
{
List
<
ClientState
>
states
=
new
ArrayList
<>(
versions
.
size
());
for
(
Client
Version
cv
:
versions
)
states
.
add
(
new
ClientState
(
c
v
,
false
));
for
(
Client
MinorVersion
cm
:
versions
)
states
.
add
(
new
ClientState
(
c
m
.
version
,
cm
.
minorVersion
,
false
));
storeUpdate
(
txn
,
g
,
states
,
1
);
}
...
...
@@ -487,7 +498,8 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
new
ArrayList
<>(
oldLocalStates
.
size
());
for
(
ClientState
oldState
:
oldLocalStates
)
{
boolean
active
=
remoteSet
.
contains
(
oldState
.
version
);
newLocalStates
.
add
(
new
ClientState
(
oldState
.
version
,
active
));
newLocalStates
.
add
(
new
ClientState
(
oldState
.
version
,
oldState
.
minorVersion
,
active
));
}
return
newLocalStates
;
}
...
...
@@ -526,26 +538,71 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, Client,
}
}
private
static
class
ClientMinorVersion
implements
Comparable
<
ClientMinorVersion
>
{
private
final
ClientVersion
version
;
private
final
int
minorVersion
;
private
ClientMinorVersion
(
ClientVersion
version
,
int
minorVersion
)
{
this
.
version
=
version
;
this
.
minorVersion
=
minorVersion
;
}
private
ClientMinorVersion
(
ClientId
clientId
,
int
majorVersion
,
int
minorVersion
)
{
this
(
new
ClientVersion
(
clientId
,
majorVersion
),
minorVersion
);
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
o
instanceof
ClientMinorVersion
)
{
ClientMinorVersion
cm
=
(
ClientMinorVersion
)
o
;
return
version
.
equals
(
cm
.
version
)
&&
minorVersion
==
cm
.
minorVersion
;
}
return
false
;
}
@Override
public
int
hashCode
()
{
return
version
.
hashCode
();
}
@Override
public
int
compareTo
(
ClientMinorVersion
cm
)
{
int
compare
=
version
.
compareTo
(
cm
.
version
);
if
(
compare
!=
0
)
return
compare
;
return
minorVersion
-
cm
.
minorVersion
;
}
}
private
static
class
ClientState
{
private
final
ClientVersion
version
;
private
final
int
minorVersion
;
private
final
boolean
active
;
private
ClientState
(
ClientVersion
version
,
boolean
active
)
{
private
ClientState
(
ClientVersion
version
,
int
minorVersion
,
boolean
active
)
{
this
.
version
=
version
;
this
.
minorVersion
=
minorVersion
;
this
.
active
=
active
;
}
private
ClientState
(
ClientId
clientId
,
int
majorVersion
,
boolean
active
)
{
this
(
new
ClientVersion
(
clientId
,
majorVersion
),
active
);
int
minorVersion
,
boolean
active
)
{
this
(
new
ClientVersion
(
clientId
,
majorVersion
),
minorVersion
,
active
);
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
o
instanceof
ClientState
)
{
ClientState
cs
=
(
ClientState
)
o
;
return
version
.
equals
(
cs
.
version
)
&&
active
==
cs
.
active
;
return
version
.
equals
(
cs
.
version
)
&&
minorVersion
==
cs
.
minorVersion
&&
active
==
cs
.
active
;
}
return
false
;
}
...
...
bramble-core/src/main/java/org/briarproject/bramble/sync/ClientVersioningValidator.java
View file @
05deaf42
...
...
@@ -39,13 +39,15 @@ class ClientVersioningValidator extends BdfMessageValidator {
int
size
=
states
.
size
();
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
BdfList
clientState
=
states
.
getList
(
i
);
// Client ID, major version, active
checkSize
(
clientState
,
3
);
// Client ID, major version,
minor version,
active
checkSize
(
clientState
,
4
);
String
clientId
=
clientState
.
getString
(
0
);
checkLength
(
clientId
,
1
,
MAX_CLIENT_ID_LENGTH
);
int
majorVersion
=
clientState
.
getLong
(
1
).
intValue
();
if
(
majorVersion
<
0
)
throw
new
FormatException
();
clientState
.
getBoolean
(
2
);
int
minorVersion
=
clientState
.
getLong
(
2
).
intValue
();
if
(
minorVersion
<
0
)
throw
new
FormatException
();
clientState
.
getBoolean
(
3
);
}
// Update version
long
updateVersion
=
body
.
getLong
(
1
);
...
...
briar-api/src/main/java/org/briarproject/briar/api/blog/BlogManager.java
View file @
05deaf42
...
...
@@ -26,6 +26,11 @@ public interface BlogManager {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the blog client.
*/
int
MINOR_VERSION
=
0
;
/**
* Adds the given {@link Blog).}
*/
...
...
briar-api/src/main/java/org/briarproject/briar/api/blog/BlogSharingManager.java
View file @
05deaf42
...
...
@@ -14,4 +14,9 @@ public interface BlogSharingManager extends SharingManager<Blog> {
* The current major version of the blog sharing client.
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the blog sharing client.
*/
int
MINOR_VERSION
=
0
;
}
briar-api/src/main/java/org/briarproject/briar/api/forum/ForumManager.java
View file @
05deaf42
...
...
@@ -27,6 +27,11 @@ public interface ForumManager {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the forum client.
*/
int
MINOR_VERSION
=
0
;
/**
* Subscribes to a forum.
*/
...
...
briar-api/src/main/java/org/briarproject/briar/api/forum/ForumSharingManager.java
View file @
05deaf42
...
...
@@ -14,4 +14,9 @@ public interface ForumSharingManager extends SharingManager<Forum> {
* The current major version of the forum sharing client.
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the forum sharing client.
*/
int
MINOR_VERSION
=
0
;
}
briar-api/src/main/java/org/briarproject/briar/api/introduction/IntroductionManager.java
View file @
05deaf42
...
...
@@ -30,6 +30,11 @@ public interface IntroductionManager extends ConversationClient {
*/
boolean
canIntroduce
(
Contact
c1
,
Contact
c2
)
throws
DbException
;
/**
* The current minor version of the introduction client.
*/
int
MINOR_VERSION
=
0
;
/**
* Sends two initial introduction messages.
*/
...
...
briar-api/src/main/java/org/briarproject/briar/api/messaging/MessagingManager.java
View file @
05deaf42
...
...
@@ -23,6 +23,11 @@ public interface MessagingManager extends ConversationClient {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the messaging client.
*/
int
MINOR_VERSION
=
0
;
/**
* Stores a local private message.
*/
...
...
briar-api/src/main/java/org/briarproject/briar/api/privategroup/PrivateGroupManager.java
View file @
05deaf42
...
...
@@ -26,6 +26,11 @@ public interface PrivateGroupManager {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the private group client.
*/
int
MINOR_VERSION
=
0
;
/**
* Adds a new private group and joins it.
*
...
...
briar-api/src/main/java/org/briarproject/briar/api/privategroup/invitation/GroupInvitationManager.java
View file @
05deaf42
...
...
@@ -30,6 +30,11 @@ public interface GroupInvitationManager extends ConversationClient {
*/
int
MAJOR_VERSION
=
0
;
/**
* The current minor version of the private group invitation client.
*/
int
MINOR_VERSION
=
0
;
/**
* Sends an invitation to share the given private group with the given
* contact, including an optional message.
...
...
briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionModule.java
View file @
05deaf42
...
...
@@ -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
;
...
...
briar-core/src/main/java/org/briarproject/briar/messaging/MessagingModule.java
View file @
05deaf42
...
...
@@ -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
;
...
...
briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationModule.java
View file @
05deaf42
...
...
@@ -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
,
...
...
briar-core/src/main/java/org/briarproject/briar/sharing/SharingModule.java
View file @
05deaf42
...
...
@@ -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
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment