Skip to content

Commit 4516490

Browse files
Merge pull request #5 from akshatlambdatest/master
MLE-11570 | Node integration to provide session details
2 parents cecaa8c + 4f904ef commit 4516490

File tree

6 files changed

+1129
-515
lines changed

6 files changed

+1129
-515
lines changed

index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
var lambdaAutomationClient = require("./lib/automation_client");
22
module.exports = {
3-
AutomationClient: lambdaAutomationClient.AutomationClient
3+
AutomationClient: lambdaAutomationClient.AutomationClient,
44
};

lib/api_client.js

Lines changed: 65 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,40 @@
11
const { version, appVersion, baseUrl, baseUrlApp } = require("./config");
22

33
var request = require("request"),
4-
logger,
5-
packageVersion = require("../package.json").version;
4+
logger,
5+
packageVersion = require("../package.json").version;
66

77
/**
88
* ApiClient is a function based Class.
99
* @param {!AutomationApiClient} settings An object that for lambda user credentials
1010
*/
11-
var ApiClient = function(settings) {
12-
settings = settings || {};
13-
/**
14-
* Required check for username.
15-
* @return {Error|null}
16-
*/
17-
if (!settings.username) {
18-
throw new Error("Username is required.");
19-
}
20-
/**
21-
* Required check for accessKey.
22-
* @return {Error|null}
23-
*/
24-
if (!settings.accessKey) {
25-
throw new Error("Access Key is required.");
26-
}
27-
if (!logger) {
28-
logger = require("./logger")(settings.logFile);
29-
}
30-
logger.info("Imported ApiClient and User Credenetials", settings);
31-
ApiClient.authHeader =
32-
"Basic " +
33-
Buffer.from(settings.username + ":" + settings.accessKey).toString(
34-
"base64"
35-
);
36-
ApiClient.settings = settings;
11+
var ApiClient = function (settings) {
12+
settings = settings || {};
13+
/**
14+
* Required check for username.
15+
* @return {Error|null}
16+
*/
17+
if (!settings.username) {
18+
throw new Error("Username is required.");
19+
}
20+
/**
21+
* Required check for accessKey.
22+
* @return {Error|null}
23+
*/
24+
if (!settings.accessKey) {
25+
throw new Error("Access Key is required.");
26+
}
27+
if (!logger) {
28+
logger = require("./logger")(settings.logFile);
29+
}
30+
logger.info("Imported ApiClient and User Credenetials", settings);
31+
ApiClient.authHeader =
32+
"Basic " + Buffer.from(settings.username + ":" + settings.accessKey).toString("base64");
33+
ApiClient.settings = settings;
3734

38-
if (settings.isApp) {
39-
ApiClient.baseUrl = baseUrlApp + appVersion.latestVersion;
40-
}
35+
if (settings.isApp) {
36+
ApiClient.baseUrl = baseUrlApp + appVersion.latestVersion;
37+
}
4138
};
4239

4340
/**
@@ -46,43 +43,43 @@ var ApiClient = function(settings) {
4643
* @param {Function} fnCallback is callback function.
4744
* @return {Function|Error} return response to Callable method or throw Error.
4845
*/
49-
ApiClient.request = function(options, fnCallback) {
50-
/** Initialize Callback function is not there */
51-
fnCallback = fnCallback || function() {};
52-
/** Check baseUrl is on ApiClient */
53-
if (ApiClient.baseUrl === undefined) {
54-
ApiClient.baseUrl = baseUrl + version.latestVersion;
55-
ApiClient.request(options, fnCallback);
56-
} else {
57-
/** Update Options with User Credential If It is object */
58-
if (typeof options === "object") {
59-
options.headers = {
60-
Authorization: ApiClient.authHeader,
61-
"Content-Type": "application/json",
62-
Accept: "application/json",
63-
client: "npm-rest-client",
64-
version: packageVersion
65-
};
66-
options.url = ApiClient.baseUrl + options.url;
67-
}
68-
/** For Debbuging purpose log Request Payload */
69-
logger.info("Api request options ", options);
70-
request(options, function(e, response, body) {
71-
if (e) {
72-
logger.error("Error while Api call of ", e);
73-
} else if (response.statusCode === 200) {
74-
// use try-catch Error possible due to json parse of non-parseable
75-
try {
76-
body = JSON.parse(body);
77-
logger.info("Api response json : ", body);
78-
return fnCallback(e, body);
79-
} catch (e) {
80-
logger.error("Error while parse to json of output response ", e);
46+
ApiClient.request = function (options, fnCallback) {
47+
/** Initialize Callback function is not there */
48+
fnCallback = fnCallback || function () {};
49+
/** Check baseUrl is on ApiClient */
50+
if (ApiClient.baseUrl === undefined) {
51+
ApiClient.baseUrl = baseUrl + version.latestVersion;
52+
ApiClient.request(options, fnCallback);
53+
} else {
54+
/** Update Options with User Credential If It is object */
55+
if (typeof options === "object") {
56+
options.headers = {
57+
Authorization: ApiClient.authHeader,
58+
"Content-Type": "application/json",
59+
Accept: "application/json",
60+
client: "npm-rest-client",
61+
version: packageVersion,
62+
};
63+
options.url = ApiClient.baseUrl + options.url;
8164
}
82-
}
83-
return fnCallback(new Error(e || body), null);
84-
});
85-
}
65+
/** For Debbuging purpose log Request Payload */
66+
logger.info("Api request options ", options);
67+
request(options, function (e, response, body) {
68+
if (e) {
69+
logger.error("Error while Api call of ", e);
70+
} else if (response.statusCode === 200) {
71+
// use try-catch Error possible due to json parse of non-parseable
72+
try {
73+
body = JSON.parse(body);
74+
logger.info("Api response json : ", body);
75+
return fnCallback(e, body);
76+
} catch (e) {
77+
logger.error("Error while parse to json of output response ", e);
78+
}
79+
}
80+
return fnCallback(new Error(e || body), null);
81+
});
82+
}
8683
};
8784

88-
module.exports = ApiClient;
85+
module.exports = ApiClient;

0 commit comments

Comments
 (0)