|
4 | 4 | * @author DocuSign |
5 | 5 | */ |
6 | 6 |
|
7 | | -const request = require("request"); |
| 7 | +const docusign = require('docusign-monitor'); |
8 | 8 |
|
9 | 9 | /** |
10 | 10 | * This function does the work of getting the monitoring data |
11 | 11 | */ |
12 | 12 | const getMonitoringData = async (args) => { |
13 | | - // Data for this method |
14 | | - // args.requestUrl |
15 | | - // args.accessToken |
16 | | - |
17 | | - const requestOptions = { |
18 | | - method: "GET", |
19 | | - // step 2 start |
20 | | - headers: { |
21 | | - Authorization: `Bearer ${args.accessToken}`, |
22 | | - "Content-Type": "application/json", |
23 | | - }, |
24 | | - // step 2 end |
25 | | - json: true, |
| 13 | + let dsApiClient = new docusign.ApiClient(); |
| 14 | + dsApiClient.setBasePath(args.basePath); |
| 15 | + dsApiClient.addDefaultHeader("Authorization", "Bearer " + args.accessToken); |
| 16 | + const datasetApi = new docusign.DataSetApi(dsApiClient); |
| 17 | + |
| 18 | + const options = { |
| 19 | + cursor: args.cursor, |
| 20 | + limit: args.limit |
26 | 21 | }; |
27 | 22 |
|
28 | | - // step 3 start |
29 | | - const limit = 2; |
30 | | - let cursorValue = ""; |
31 | | - let complete = false; |
32 | | - let results = []; |
33 | | - do { |
34 | | - const requestParams = `cursor=${cursorValue}&limit=${limit}`; |
35 | | - |
36 | | - let endCursor = ""; |
37 | | - let responseResult = null; |
38 | | - |
39 | | - await doRequest(args.requestUrl + requestParams, requestOptions) |
40 | | - .then((body) => { |
41 | | - endCursor = body.endCursor; |
42 | | - responseResult = body; |
43 | | - }) |
44 | | - .catch((error) => { |
45 | | - throw error; |
46 | | - }); |
| 23 | + const result = await datasetApi.getStreamForDataset(args.version, args.dataset, options); |
47 | 24 |
|
48 | | - if (endCursor === cursorValue) { |
49 | | - complete = true; |
50 | | - } else { |
51 | | - cursorValue = endCursor; |
52 | | - results.push(responseResult); |
53 | | - } |
54 | | - } while (!complete); |
55 | | - // step 3 end |
56 | | - return results; |
57 | | -}; |
58 | | - |
59 | | -/** |
60 | | - * Does the request |
61 | | - * @function |
62 | | - * @private |
63 | | - * @param {string} url request url |
64 | | - * @param {Object} options request options |
65 | | - * @returns {Promise} A promise with request results |
66 | | - */ |
67 | | -function doRequest(url, options) { |
68 | | - return new Promise(function (resolve, reject) { |
69 | | - request(url, options, function (error, res, body) { |
70 | | - if (!error) { |
71 | | - resolve(body); |
72 | | - } else { |
73 | | - reject(error); |
74 | | - } |
75 | | - }); |
76 | | - }); |
| 25 | + return result; |
77 | 26 | } |
78 | 27 |
|
79 | 28 | module.exports = { getMonitoringData }; |
0 commit comments