The owncloud clients are objects used by the library to execute remote operations and contain credentials. These objects would be pretty easy to maintain if it weren't for the multiaccount support, which forces us to have a dependency between accounts and clients, reusing clients for an account.
Nowadays the creation of ownCloud Client is handled by different classes:
- OwnCloudClientFactory
- OwnCloudClientManagerFactory
- OwnCloudClientManager
- SimpleFactoryManager
- SingleSessionManager
- DynamicSessionManager
Thanks to Get rid of saml implementation issue , we could:
- Get rid of
SINGLE_SESSION_PER_ACCOUNT case in OwnCloudClientManagerFactory.
Thanks to #2636, we could:
- Get rid of
SINGLE_SESSION_PER_ACCOUNT_IF_SERVER_SUPPORTS_SERVER_MONITORING case in OwnCloudClientManagerFactory since server monitoring is supported by default on >=10 servers. Therefore, DynamicSessionManager would be no longer needed.
Once we clean up the way to handle ownCloud Clients we could create a factory of clients from accounts by using dependency injection with Koin (https://insert-koin.io/docs/2.0/documentation/reference/index.html#_declaring_injection_parameters)
TASKS
PR
Related issues
The owncloud clients are objects used by the library to execute remote operations and contain credentials. These objects would be pretty easy to maintain if it weren't for the multiaccount support, which forces us to have a dependency between accounts and clients, reusing clients for an account.
Nowadays the creation of ownCloud Client is handled by different classes:
Thanks to Get rid of saml implementation issue , we could:
SINGLE_SESSION_PER_ACCOUNTcase in OwnCloudClientManagerFactory.Thanks to #2636, we could:
SINGLE_SESSION_PER_ACCOUNT_IF_SERVER_SUPPORTS_SERVER_MONITORINGcase in OwnCloudClientManagerFactory since server monitoring is supported by default on >=10 servers. Therefore, DynamicSessionManager would be no longer needed.Once we clean up the way to handle ownCloud Clients we could create a factory of clients from accounts by using dependency injection with Koin (https://insert-koin.io/docs/2.0/documentation/reference/index.html#_declaring_injection_parameters)
TASKS
PR
Related issues