From 7f3538875be727f28126d39edff705d2f254baad Mon Sep 17 00:00:00 2001 From: "Alexander \"PapaTutuWawa" Date: Tue, 4 Apr 2023 15:59:07 +0200 Subject: [PATCH] feat(core): Make all managers optional --- integration_tests/test/component_test.dart | 4 --- packages/moxxmpp/lib/src/connection.dart | 34 +++------------------- packages/moxxmpp/test/component_test.dart | 4 --- 3 files changed, 4 insertions(+), 38 deletions(-) diff --git a/integration_tests/test/component_test.dart b/integration_tests/test/component_test.dart index e5b6bc5..452da46 100644 --- a/integration_tests/test/component_test.dart +++ b/integration_tests/test/component_test.dart @@ -31,10 +31,6 @@ void main() { host: '127.0.0.1', port: 8888, ); - await conn.registerManagers([ - RosterManager(TestingRosterStateManager('', [])), - DiscoManager([]), - ]); final result = await conn.connect( waitUntilLogin: true, diff --git a/packages/moxxmpp/lib/src/connection.dart b/packages/moxxmpp/lib/src/connection.dart index b1c1931..d5a957d 100644 --- a/packages/moxxmpp/lib/src/connection.dart +++ b/packages/moxxmpp/lib/src/connection.dart @@ -262,26 +262,14 @@ class XmppConnection { return getManagerById(presenceManager); } - /// A [DiscoManager] is required so, have a wrapper for getting it. /// Returns the registered [DiscoManager]. - DiscoManager getDiscoManager() { - assert( - _xmppManagers.containsKey(discoManager), - 'A DiscoManager is mandatory', - ); - - return getManagerById(discoManager)!; + DiscoManager? getDiscoManager() { + return getManagerById(discoManager); } - /// A [RosterManager] is required, so have a wrapper for getting it. /// Returns the registered [RosterManager]. - RosterManager getRosterManager() { - assert( - _xmppManagers.containsKey(rosterManager), - 'A RosterManager is mandatory', - ); - - return getManagerById(rosterManager)!; + RosterManager? getRosterManager() { + return getManagerById(rosterManager); } /// Returns the registered [StreamManagementManager], if one is registered. @@ -845,18 +833,6 @@ class XmppConnection { } } - /// Make sure that all required managers are registered - void _runPreConnectionAssertions() { - assert( - _xmppManagers.containsKey(rosterManager), - 'A RosterManager is mandatory', - ); - assert( - _xmppManagers.containsKey(discoManager), - 'A DiscoManager is mandatory', - ); - } - /// The private implementation for [XmppConnection.connect]. The parameters have /// the same meaning as with [XmppConnection.connect]. Future> _connectImpl({ @@ -957,8 +933,6 @@ class XmppConnection { bool waitUntilLogin = false, bool enableReconnectOnSuccess = true, }) async { - _runPreConnectionAssertions(); - final result = _connectImpl( lastResource: lastResource, shouldReconnect: shouldReconnect ?? !waitUntilLogin, diff --git a/packages/moxxmpp/test/component_test.dart b/packages/moxxmpp/test/component_test.dart index f40ba42..ad6a6b3 100644 --- a/packages/moxxmpp/test/component_test.dart +++ b/packages/moxxmpp/test/component_test.dart @@ -35,10 +35,6 @@ void main() { jid: JID.fromString('component.example.org'), password: 'abc123', ); - await conn.registerManagers([ - RosterManager(TestingRosterStateManager('', [])), - DiscoManager([]), - ]); final result = await conn.connect( waitUntilLogin: true, );