oa-jira
Version:
Octet Agile's JIRA connectivity project.
34 lines (26 loc) • 877 B
JavaScript
const commons = require('../../commons');
const utils = require('../utils/connection.utils');
class Connection {
#mode;
#baseUrl;
#user;
#token;
constructor({ mode, baseUrl, user, token }) {
this.#mode = mode;
this.#baseUrl = baseUrl;
this.#user = user;
this.#token = token;
}
getMode = () => this.#mode;
getBaseUrl = () => this.#baseUrl;
getUser = () => this.#user;
getToken = () => this.#token;
buildAuthorization = () => utils.buildAuthorization(this.#mode, this.#user, this.#token);
static create({ mode, baseUrl, user, token }) {
return Promise.resolve(new Connection({ mode, baseUrl, user, token }));
}
static resolve(connection) {
return commons.object.resolve(connection, { name: 'connection', className: 'Connection', _class: Connection });
}
}
module.exports = Connection;