akwizgran
ec1f4dccdb
Added third group visibility state.
2016-11-16 15:40:51 +00:00
akwizgran
aa210fc555
Factor MessageTracker out of BdfIncomingMessageHook.
2016-11-11 16:59:10 +00:00
Torsten Grote
e96b3a8c68
Use namespaced strings for client IDs
2016-11-08 11:17:52 -02:00
akwizgran
51bcf7b1b8
Don't use messaging group ID as proxy for contact ID.
2016-11-04 15:50:44 +00:00
Torsten Grote
b34b4623ed
Replace transaction.setComplete() by database.commitTransaction()
2016-11-02 13:04:31 -02:00
Torsten Grote
78740a6942
Remove content-type and parentId from private messages
...
and turn them into a regular string.
2016-11-01 08:39:15 -02:00
akwizgran
50a70f7649
Use start/stop lifecycle callbacks rather than pause/resume.
...
Also fixed a couple of bugs.
2016-10-20 10:40:10 +01:00
Torsten Grote
7f2db71160
Address review comments
2016-10-10 10:46:30 -03:00
Torsten Grote
f52819f4ca
Create a basic ConversationManager for querying GroupCount
...
This is also lays the groundwork for #384
2016-10-10 08:00:16 -03:00
Torsten Grote
457c30f3f2
Add GroupId to conversation items
2016-10-10 08:00:15 -03:00
Torsten Grote
a727a0817e
Store message count, unread count and timestamp of latest message
...
in group metadata to be able to speed up group listings.
Closes #584 , #586 , #585
2016-10-05 12:34:37 -03:00
Torsten Grote
6ece398a21
Create PrivateGroupManager Facade and stub implementation
2016-09-30 12:05:35 -03:00
Torsten Grote
d058172429
When a message is shared, share its transitive dependencies
...
Like other recursive operations on the dependency graph, this is
not done in a single transaction to prevent an attacker from creating
arbitrary large transactions.
So at startup, the `ValidationManager` finds and resumes any
unfinished operations, by looking for shared messages with unshared
dependencies.
2016-09-28 13:17:11 -03:00
akwizgran
8a3e5bfb50
Refactor ValidationManager and fix some bugs. #619
2016-09-09 18:03:14 +01:00
Torsten Grote
b26acdf228
Introduce a PrivateMessageReceivedEvent and use it in the Android app
2016-06-08 10:31:26 -03:00
Torsten Grote
3f2b85ac0d
Introduce a MessageContext class for more flexibility
...
This change will allow to pass message dependencies from the client
validators to the ValidationManager.
2016-05-20 02:46:37 +00:00
akwizgran
945b5eb1ac
Create local state for clients at startup. #279
2016-04-01 17:15:35 +01:00
akwizgran
1855dbbd2d
Use a lock to ensure transaction isolation. #272
2016-03-28 13:52:12 +01:00
Ernir Erlingsson
85c66417b5
branch cleanup
2016-03-14 21:02:51 +01:00
Ernir Erlingsson
686729b045
refactor with master and fixed files that were accidentally clobbered
2016-03-14 21:02:51 +01:00
Ernir Erlingsson
6f233070fe
Semi-encapsulated the core/api dependency graphs and created a proper structure to load eager singletons
2016-03-14 21:02:51 +01:00
Ernir Erlingsson
10764d727b
rebased with master
2016-03-14 21:02:51 +01:00
Ernir Erlingsson
9af3ce123a
Added eager singletons and made some fixes
2016-03-14 21:02:51 +01:00
Ernir Erlingsson
1be400eb84
Switched Roboguice/Guice out for Dagger 2
2016-03-14 21:01:21 +01:00
akwizgran
5bb8e95b26
Pass original message to BDF validators and hooks.
2016-03-08 17:03:22 +00:00
akwizgran
88ab694af8
No need to unwrap Bytes before adding to dictionary.
2016-03-04 21:11:25 +00:00
akwizgran
5998412a8a
Use ClientHelper in PrivateMessageFactoryImpl.
2016-03-04 21:10:52 +00:00
akwizgran
cc7ffee28d
Superclass for validating messages that are BDF lists.
2016-03-04 21:10:44 +00:00
akwizgran
8beff5c743
Use ClientHelper in MessagingManagerImpl.
2016-03-04 21:07:33 +00:00
akwizgran
640f5484e0
Moved PrivateGroupFactory to clients package.
2016-02-29 14:25:29 +00:00
akwizgran
e3374b7584
Rename BDF methods.
2016-02-29 11:57:42 +00:00
akwizgran
9f8baab60f
Code cleanup.
2016-02-11 16:26:23 +00:00
akwizgran
de8cc50fb4
Moved transactions out of database component.
2016-02-11 16:26:19 +00:00
akwizgran
ef2b2b9710
Removed unneeded visibility methods.
2016-02-11 16:21:53 +00:00
akwizgran
675ce4bfef
Removed direct calls to DB's contact/identity methods.
2016-02-11 16:21:52 +00:00
akwizgran
18db17bf5b
Moved subscription updates to the client layer.
2016-02-10 10:47:30 +00:00
akwizgran
3837efca6b
Updated group-related events and exceptions.
2016-02-10 10:47:26 +00:00
akwizgran
9d537dce00
Removed contact subscriptions from database.
2016-02-10 10:46:41 +00:00
akwizgran
e76aef3dc8
Unshared messages.
2016-01-29 13:45:22 +00:00
akwizgran
4e17621081
Factored out code for creating private groups.
2016-01-28 18:05:01 +00:00
akwizgran
88475bdd54
Transport properties client. #229
2016-01-27 12:51:55 +00:00
akwizgran
88a8081351
Metadata for groups. #221
2016-01-20 15:03:42 +00:00
akwizgran
3c543b0d62
Fixed crash caused by using DB too early in lifecycle.
2016-01-20 15:03:10 +00:00
akwizgran
281ca734e3
Addressed issues from code review.
2016-01-20 14:43:47 +00:00
akwizgran
82cf12040f
Contact manager hooks. #209
2016-01-20 14:43:46 +00:00
akwizgran
33ef09a6bf
Implement Service interface rather than extending it.
...
Whether or not a class needs to run as a service is an implementation decision.
2016-01-20 14:43:46 +00:00
akwizgran
77054cbae7
Small improvements to DB interface.
2016-01-20 10:35:14 +00:00
akwizgran
5355951466
Separate the sync layer from its clients. #112
2016-01-20 10:35:09 +00:00
akwizgran
805bf39ec8
Created TransportPropertyManager facade.
2016-01-04 12:56:06 +00:00
akwizgran
f899bc0c38
Facade for private message headers. #173
2015-12-17 16:56:58 +00:00