UNPKG

synergia-jira-connector

Version:

Easy to use NodeJS wrapper for the Jira REST API.

85 lines (77 loc) 2.55 kB
"use strict"; module.exports = MyPreferencesClient; /** * Used to access Jira REST endpoints in '/rest/api/2/mypreferences' * * @param {JiraClient} jiraClient * @constructor MyPreferencesClient */ function MyPreferencesClient (jiraClient) { this.jiraClient = jiraClient; /** * Gets preference of the currently logged in user. Preference key must be provided as input parameter (key). * The value is returned exactly as it is. * * @method getPreference * @memberOf MyPreferencesClient# * @param opts The request options send to the Jira API. * @param opts.key Key of the preference to be returned. * @param callback Called when the preference has been retrieved. */ this.getPreference = function (opts, callback) { var options = { uri: this.jiraClient.buildURL('/mypreferences'), method: 'GET', json: true, followAllRedirects: true, qs: { key: opts.key } }; this.jiraClient.makeRequest(options, callback); }; /** * Sets preference of the currently logged in user. Preference key must be provided as input parameters (key). * * @method editPreference * @memberOf MyPreferencesClient# * @param opts The request options send to the Jira API. * @param opts.key Key of the preference to be edited. * @param opts.value The new value to set for the preference. * @param callback Called when the preference has been edited. */ this.editPreference = function (opts, callback) { var options = { uri: this.jiraClient.buildURL('/mypreferences'), method: 'PUT', json: true, followAllRedirects: true, qs: { key: opts.key }, body: opts.value }; this.jiraClient.makeRequest(options, callback); }; /** * Removes preference of the currently logged in user. Preference key must be provided as input parameters (key). * * @method deletePreference * @memberOf MyPreferencesClient# * @param opts The request options send to the Jira API. * @param opts.key Key of the preference to be deleted. * @param callback Called when the preference has been deleted. */ this.deletePreference = function (opts, callback) { var options = { uri: this.jiraClient.buildURL('/mypreferences'), method: 'DELETE', json: true, followAllRedirects: true, qs: { key: opts.key } }; this.jiraClient.makeRequest(options, callback); } }