Plato on Github
Report Home
lib/api/view.js
Maintainability
83.64
Lines of code
72
Difficulty
16.77
Estimated Errors
0.24
Function weight
By Complexity
By SLOC
"use strict"; import _ from 'lodash'; import RssParser from 'rss-parser'; /** * Create a view with specified configuration. * * @param {String} name: Jenkins view name * @param {String} config: Jenkins view config.xml * @param {Function} cb: standard cb(err, result) callback */ function create(name, config, cb) { const opts = { body: config, contentType: 'application/xml', }; this.remoteAccessApi.postCreateView(name, _.merge(opts, this.opts.headers), cb); } /** * Retrieve information about a view. * * @param {String} name: Jenkins view name * @param {Function} cb: standard cb(err, result) callback */ function read(name, cb) { this.remoteAccessApi.getView(name, cb); } /** * Update a view with specified configuration * * @param {String} name: Jenkins view name * @param {String} config: Jenkins view config.xml * @param {Function} cb: standard cb(err, result) callback */ function update(name, config, cb) { this.remoteAccessApi.postViewConfig(name, config, this.opts.headers, cb); } /** * Fetch a view configuration. * * @param {String} name: Jenkins view name * @param {Function} cb: standard cb(err, result) callback */ function fetchConfig(name, cb) { this.remoteAccessApi.getViewConfig(name, cb); } /** * Parse view feed. * * @param {String} name: Jenkins view name * @param {Function} cb: standard cb(err, result) callback */ function parseFeed(name, cb) { const url = this.url + '/view/' + name + '/rssAll'; new RssParser().parseURL(url, cb); } const exports = { create: create, read: read, update: update, fetchConfig: fetchConfig, parseFeed: parseFeed }; export { exports as default };