Daniel Gultsch
870393df8e
introduce 'PepManager' to unify what pubsub service we talk to
2023-03-01 22:05:39 +01:00
Daniel Gultsch
e2ea1f9437
fix device list publication. boomarks add + retract
2023-03-01 22:05:39 +01:00
Daniel Gultsch
3be56b6775
reconfigure node when precondition is not met
2023-03-01 22:05:39 +01:00
Daniel Gultsch
58b1e26367
include publish-options. prepare code for reconfiguration
2023-03-01 22:05:39 +01:00
Daniel Gultsch
c077e4e8da
add PubSubManager, AvatarManager and AxolotlManager
2023-03-01 22:05:39 +01:00
Daniel Gultsch
f1e1cf9653
respond to software version requests
2023-03-01 22:05:39 +01:00
Daniel Gultsch
e073f22ec0
respond to disco#info queries
2023-03-01 22:05:39 +01:00
Daniel Gultsch
57d264d72e
include caps in outgoing presence
2023-03-01 22:05:39 +01:00
Daniel Gultsch
9a855a57ac
add models for Error conditions
2023-03-01 22:05:39 +01:00
Daniel Gultsch
ddcab5fb58
add message carbon processing
2023-03-01 22:05:38 +01:00
Daniel Gultsch
fe32526de8
parse blocking command pushes
2023-03-01 22:05:38 +01:00
Daniel Gultsch
164ac450d4
introduce CarbonsManager to enable and maintain carbon state
2023-03-01 22:05:38 +01:00
Daniel Gultsch
d2794ccf32
create new models for IQ, Message & Presence
2023-03-01 22:05:38 +01:00
Daniel Gultsch
f16603742f
make authentications work with null password
2023-03-01 22:05:38 +01:00
Daniel Gultsch
f982885d2e
fix regression in ping strategy
2023-03-01 22:05:38 +01:00
Daniel Gultsch
8df97067bb
discover commands on domain
2023-03-01 22:05:38 +01:00
Daniel Gultsch
bd343eafa0
add async variant for createAccount
2023-03-01 22:05:38 +01:00
Daniel Gultsch
c31fa7ed2b
include parentNode in disco items table
2023-03-01 22:05:38 +01:00
Daniel Gultsch
d25cc059c5
add AccountRepository
2023-03-01 22:05:38 +01:00
Daniel Gultsch
359ef330df
get rid of upsert in favor of update and insert
...
upsert seems to only work with primary keys and not other
unique constraints.
2023-03-01 22:05:38 +01:00
Daniel Gultsch
de06bfb8f0
retrieve Extensions not Elements from extension map
2023-03-01 22:05:38 +01:00
Daniel Gultsch
1e6aed759b
check caps hash after retrieving them
2023-03-01 22:05:37 +01:00
Daniel Gultsch
1a09b3ed05
use empty string instead of null for 'no node' and 'no resource'
2023-03-01 22:05:37 +01:00
Daniel Gultsch
90e613f94e
fix parsing error in Legacy caps
2023-03-01 22:05:37 +01:00
Daniel Gultsch
09db9e574b
do not return NodeHash if no valid hash mech is found
2023-03-01 22:05:37 +01:00
Daniel Gultsch
f5faa8fc4d
try with resources in CredentialStore
2023-03-01 22:05:37 +01:00
Daniel Gultsch
bfa61d56af
use annotations processor to create extensions
2023-03-01 22:05:37 +01:00
Daniel Gultsch
da65960fd1
reconnect account after adding to ConnectionPool
2023-03-01 22:05:37 +01:00
Daniel Gultsch
6983aedddc
add IDs.seed() method for random account seed
2023-03-01 22:05:37 +01:00
Daniel Gultsch
27952c00ed
flush credential store file
2023-03-01 22:05:37 +01:00
Daniel Gultsch
944c48e00b
store presence in DB
2023-03-01 22:05:37 +01:00
Daniel Gultsch
26bff8028a
check disco feature on entity
2023-03-01 22:05:37 +01:00
Daniel Gultsch
873644f528
remove XmppConnection.Features helper class in favor of DiscoManager
2023-03-01 22:05:37 +01:00
Daniel Gultsch
199a1cdc64
add code to fetch items and their infos in one go
2023-03-01 22:05:37 +01:00
Daniel Gultsch
43a82e504b
parse caps from presence
2023-03-01 22:05:37 +01:00
Daniel Gultsch
a2b21d97eb
use dedicated hash object instead of byte[] for caps
...
this way we can store the algo alongside the object
2023-03-01 22:05:36 +01:00
Daniel Gultsch
6458c6e9f9
store disco features after fetching them
2023-03-01 22:05:36 +01:00
Daniel Gultsch
1b438117a3
add Entity Caps 2 hash calculation
2023-03-01 22:05:36 +01:00
Daniel Gultsch
78af8cbd87
migrate entity caps 1 calculation to new code
2023-03-01 22:05:36 +01:00
Daniel Gultsch
482dc8cfe9
insert disco items into db
2023-03-01 22:05:36 +01:00
Daniel Gultsch
3e9029dc8f
bump targetSdk; bump room version
2023-03-01 22:05:36 +01:00
Daniel Gultsch
38c612d35d
make name+namespace assignment in xmpp less error prone
2023-03-01 22:05:36 +01:00
Daniel Gultsch
07c1669813
introduce Manager concept to bundle functionality like roster, blocking, …
2023-03-01 22:05:36 +01:00
Daniel Gultsch
20962554a4
retrieve blocklist on bind
2023-03-01 22:05:36 +01:00
Daniel Gultsch
6b232f7a5a
fetch roster. process result
2023-03-01 22:05:36 +01:00
Daniel Gultsch
9e7bbcc272
offer alternative access to elements and children
...
instead of Element.findChild(name, namespace) we can now use
Element.getExtension(Extension.class) for registered extensions
2023-03-01 22:05:36 +01:00
Daniel Gultsch
49bf92f7ca
wire up MessageAckProcessor with DB
2023-03-01 22:05:35 +01:00
Daniel Gultsch
2c32f9738c
homogenize ID generation
2023-03-01 22:05:35 +01:00
Daniel Gultsch
7ee3e07946
Introduce XmppConnection v3
...
The various layers of the app are too intertwined to refactor them in place.
The C3 refactor is going to create a parallel architecture for all classes that
have too strong of a connection to other parts of the app.
This commit introduces XmppConnection v3 that keeps a lot of the logic of the
privous XmppConnection but cuts ties to XmppConnectionService and the very
stateful `entites.Account`. The latter is replaced by a lightweight immutable
account model.
The reconnection logic has been kept but was moved from XmppConnectionService
to a singleton ConnectionPool.
2023-03-01 22:05:35 +01:00
Daniel Gultsch
94dde9f433
initial set of Room entities
2023-03-01 22:05:35 +01:00