@@ -2,10 +2,17 @@ var request = require("request"),
22 logger ,
33 packageVersion = require ( "../package.json" ) . version ;
44
5+ /**
6+ * ApiClient is a function based Class.
7+ * @param {!AutomationApiClient } settings An object that for lambda user credentials
8+ */
59var ApiClient = function ( settings ) {
610 settings = settings || { } ;
711
8- // Set default region if not provided and validate
12+ /**
13+ * Region validation
14+ * @return {Error|null }
15+ */
916 const region = settings . region || "us" ;
1017 if ( ! [ "us" , "eu" ] . includes ( region ) ) {
1118 throw new Error ( "Region is invalid." ) ;
@@ -14,12 +21,18 @@ var ApiClient = function (settings) {
1421 // Load region-specific config and attach it to ApiClient
1522 ApiClient . config = require ( `./config.${ region } ` ) ;
1623
17- // Required check for username
24+ /**
25+ * Required check for username.
26+ * @return {Error|null }
27+ */
1828 if ( ! settings . username ) {
1929 throw new Error ( "Username is required." ) ;
2030 }
2131
22- // Required check for accessKey
32+ /**
33+ * Required check for accessKey.
34+ * @return {Error|null }
35+ */
2336 if ( ! settings . accessKey ) {
2437 throw new Error ( "Access Key is required." ) ;
2538 }
@@ -39,7 +52,14 @@ var ApiClient = function (settings) {
3952 }
4053} ;
4154
55+ /**
56+ * Extends ApiClient Class with static method for all Api Request.
57+ * @param {!ApiClient } options An object that determine the Request payload
58+ * @param {Function } fnCallback is callback function.
59+ * @return {Function|Error } return response to Callable method or throw Error.
60+ */
4261ApiClient . request = function ( options , fnCallback ) {
62+ /** Initialize Callback function is not there */
4363 fnCallback = fnCallback || function ( ) { } ;
4464
4565 // Access the configuration from ApiClient
@@ -50,6 +70,7 @@ ApiClient.request = function (options, fnCallback) {
5070 ApiClient . baseUrl = baseUrl + version . latestVersion ;
5171 ApiClient . request ( options , fnCallback ) ;
5272 } else {
73+ /** Update Options with User Credential If It is object */
5374 if ( typeof options === "object" ) {
5475 options . headers = {
5576 Authorization : ApiClient . authHeader ,
@@ -61,14 +82,15 @@ ApiClient.request = function (options, fnCallback) {
6182 options . url = ApiClient . baseUrl + options . url ;
6283 }
6384
85+ /** For Debbuging purpose log Request Payload */
6486 logger . info ( "Api request options" , options ) ;
6587 request ( options , function ( e , response , body ) {
6688 if ( e ) {
6789 logger . error ( "Error while Api call" , e ) ;
6890 } else if ( response . statusCode === 200 ) {
6991 try {
7092 body = JSON . parse ( body ) ;
71- logger . info ( "Api response json" , body ) ;
93+ logger . info ( "Api response json : " , body ) ;
7294 return fnCallback ( e , body ) ;
7395 } catch ( e ) {
7496 logger . error ( "Error while parsing to json of output response" , e ) ;
0 commit comments