48 lines
973 B
JavaScript
48 lines
973 B
JavaScript
|
/**
|
||
|
* Base class for user synchronizators.
|
||
|
*
|
||
|
* @property {Array<Model>} $
|
||
|
* @property {Object} accountConfig
|
||
|
* @property {Object} mailConfig
|
||
|
*/
|
||
|
class SyncConnector {
|
||
|
/**
|
||
|
* Initalizes the connector.
|
||
|
*/
|
||
|
async init() {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Get users to synchronize.
|
||
|
*
|
||
|
* @param {Set} usersToSync Set where users are added
|
||
|
*/
|
||
|
async getUsers(usersToSync) {}
|
||
|
|
||
|
/**
|
||
|
* Synchronizes a user.
|
||
|
*
|
||
|
* @param {Object} info User information
|
||
|
* @param {String} userName The user name
|
||
|
* @param {String} password Thepassword
|
||
|
*/
|
||
|
async sync(info, userName, password) {}
|
||
|
|
||
|
/**
|
||
|
* Synchronizes user groups.
|
||
|
*
|
||
|
* @param {User} user Instace of user
|
||
|
* @param {String} userName The user name
|
||
|
*/
|
||
|
async syncGroups(user, userName) {}
|
||
|
|
||
|
/**
|
||
|
* Deinitalizes the connector.
|
||
|
*/
|
||
|
async deinit() {}
|
||
|
}
|
||
|
|
||
|
SyncConnector.connectors = [];
|
||
|
module.exports = SyncConnector;
|