@itentialopensource/adapter-clearcable_noms 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CALLS.md +227 -22
  2. package/CHANGELOG.md +8 -0
  3. package/CONTRIBUTING.md +1 -160
  4. package/ENHANCE.md +2 -2
  5. package/README.md +32 -23
  6. package/adapter.js +185 -357
  7. package/adapterBase.js +549 -879
  8. package/metadata.json +47 -0
  9. package/package.json +24 -25
  10. package/pronghorn.json +980 -641
  11. package/propertiesSchema.json +432 -32
  12. package/refs?service=git-upload-pack +0 -0
  13. package/report/adapterInfo.json +8 -8
  14. package/report/updateReport1691508928842.json +120 -0
  15. package/report/updateReport1692202244795.json +120 -0
  16. package/report/updateReport1692203340166.json +120 -0
  17. package/report/updateReport1694469507022.json +120 -0
  18. package/report/updateReport1698423028129.json +120 -0
  19. package/sampleProperties.json +63 -2
  20. package/test/integration/adapterTestBasicGet.js +2 -4
  21. package/test/integration/adapterTestConnectivity.js +91 -42
  22. package/test/integration/adapterTestIntegration.js +130 -2
  23. package/test/unit/adapterBaseTestUnit.js +388 -313
  24. package/test/unit/adapterTestUnit.js +338 -112
  25. package/utils/adapterInfo.js +1 -1
  26. package/utils/addAuth.js +1 -1
  27. package/utils/artifactize.js +1 -1
  28. package/utils/checkMigrate.js +1 -1
  29. package/utils/entitiesToDB.js +2 -2
  30. package/utils/findPath.js +1 -1
  31. package/utils/methodDocumentor.js +273 -0
  32. package/utils/modify.js +13 -15
  33. package/utils/packModificationScript.js +1 -1
  34. package/utils/pre-commit.sh +2 -0
  35. package/utils/taskMover.js +309 -0
  36. package/utils/tbScript.js +89 -34
  37. package/utils/tbUtils.js +41 -21
  38. package/utils/testRunner.js +1 -1
  39. package/utils/troubleshootingAdapter.js +9 -6
  40. package/workflows/README.md +0 -3
package/adapter.js CHANGED
@@ -86,9 +86,6 @@ class ClearcableNoms extends AdapterBaseCl {
86
86
  let myIgnore = [
87
87
  'healthCheck',
88
88
  'iapGetAdapterWorkflowFunctions',
89
- 'iapHasAdapterEntity',
90
- 'iapVerifyAdapterCapability',
91
- 'iapUpdateAdapterEntityCache',
92
89
  'hasEntities',
93
90
  'getAuthorization'
94
91
  ];
@@ -116,29 +113,15 @@ class ClearcableNoms extends AdapterBaseCl {
116
113
  * @param {string} entity - the entity to be changed, if an action, schema or mock data file (optional)
117
114
  * @param {string} type - the type of entity file to change, (action, schema, mock) (optional)
118
115
  * @param {string} action - the action to be changed, if an action, schema or mock data file (optional)
116
+ * @param {boolean} replace - true to replace entire mock data, false to merge/append
119
117
  * @param {Callback} callback - The results of the call
120
118
  */
121
- iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback) {
119
+ iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, replace, callback) {
122
120
  const meth = 'adapter-iapUpdateAdapterConfiguration';
123
121
  const origin = `${this.id}-${meth}`;
124
122
  log.trace(origin);
125
123
 
126
- super.iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback);
127
- }
128
-
129
- /**
130
- * See if the API path provided is found in this adapter
131
- *
132
- * @function iapFindAdapterPath
133
- * @param {string} apiPath - the api path to check on
134
- * @param {Callback} callback - The results of the call
135
- */
136
- iapFindAdapterPath(apiPath, callback) {
137
- const meth = 'adapter-iapFindAdapterPath';
138
- const origin = `${this.id}-${meth}`;
139
- log.trace(origin);
140
-
141
- super.iapFindAdapterPath(apiPath, callback);
124
+ super.iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, replace, callback);
142
125
  }
143
126
 
144
127
  /**
@@ -180,7 +163,7 @@ class ClearcableNoms extends AdapterBaseCl {
180
163
  }
181
164
 
182
165
  /**
183
- * @summary Get the Adaoter Queue
166
+ * @summary Get the Adapter Queue
184
167
  *
185
168
  * @function iapGetAdapterQueue
186
169
  * @param {Callback} callback - callback function
@@ -193,6 +176,22 @@ class ClearcableNoms extends AdapterBaseCl {
193
176
  return super.iapGetAdapterQueue(callback);
194
177
  }
195
178
 
179
+ /* SCRIPT CALLS */
180
+ /**
181
+ * See if the API path provided is found in this adapter
182
+ *
183
+ * @function iapFindAdapterPath
184
+ * @param {string} apiPath - the api path to check on
185
+ * @param {Callback} callback - The results of the call
186
+ */
187
+ iapFindAdapterPath(apiPath, callback) {
188
+ const meth = 'adapter-iapFindAdapterPath';
189
+ const origin = `${this.id}-${meth}`;
190
+ log.trace(origin);
191
+
192
+ super.iapFindAdapterPath(apiPath, callback);
193
+ }
194
+
196
195
  /**
197
196
  * @summary Runs troubleshoot scripts for adapter
198
197
  *
@@ -293,176 +292,93 @@ class ClearcableNoms extends AdapterBaseCl {
293
292
  }
294
293
  }
295
294
 
296
- /* BROKER CALLS */
297
295
  /**
298
- * @summary Determines if this adapter supports the specific entity
296
+ * @summary Deactivate adapter tasks
299
297
  *
300
- * @function iapHasAdapterEntity
301
- * @param {String} entityType - the entity type to check for
302
- * @param {String/Array} entityId - the specific entity we are looking for
298
+ * @function iapDeactivateTasks
303
299
  *
304
- * @param {Callback} callback - An array of whether the adapter can has the
305
- * desired capability or an error
300
+ * @param {Array} tasks - List of tasks to deactivate
301
+ * @param {Callback} callback
306
302
  */
307
- iapHasAdapterEntity(entityType, entityId, callback) {
308
- const origin = `${this.id}-adapter-iapHasAdapterEntity`;
303
+ iapDeactivateTasks(tasks, callback) {
304
+ const meth = 'adapter-iapDeactivateTasks';
305
+ const origin = `${this.id}-${meth}`;
309
306
  log.trace(origin);
310
307
 
311
- // Make the call -
312
- // iapVerifyAdapterCapability(entityType, actionType, entityId, callback)
313
- return this.iapVerifyAdapterCapability(entityType, null, entityId, callback);
308
+ try {
309
+ return super.iapDeactivateTasks(tasks, callback);
310
+ } catch (err) {
311
+ log.error(`${origin}: ${err}`);
312
+ return callback(null, err);
313
+ }
314
314
  }
315
315
 
316
316
  /**
317
- * @summary Provides a way for the adapter to tell north bound integrations
318
- * whether the adapter supports type, action and specific entity
317
+ * @summary Activate adapter tasks that have previously been deactivated
319
318
  *
320
- * @function iapVerifyAdapterCapability
321
- * @param {String} entityType - the entity type to check for
322
- * @param {String} actionType - the action type to check for
323
- * @param {String/Array} entityId - the specific entity we are looking for
319
+ * @function iapActivateTasks
324
320
  *
325
- * @param {Callback} callback - An array of whether the adapter can has the
326
- * desired capability or an error
321
+ * @param {Array} tasks - List of tasks to activate
322
+ * @param {Callback} callback
327
323
  */
328
- iapVerifyAdapterCapability(entityType, actionType, entityId, callback) {
329
- const meth = 'adapterBase-iapVerifyAdapterCapability';
324
+ iapActivateTasks(tasks, callback) {
325
+ const meth = 'adapter-iapActivateTasks';
330
326
  const origin = `${this.id}-${meth}`;
331
327
  log.trace(origin);
332
328
 
333
- // if caching
334
- if (this.caching) {
335
- // Make the call - iapVerifyAdapterCapability(entityType, actionType, entityId, callback)
336
- return this.requestHandlerInst.iapVerifyAdapterCapability(entityType, actionType, entityId, (results, error) => {
337
- if (error) {
338
- return callback(null, error);
339
- }
340
-
341
- // if the cache needs to be updated, update and try again
342
- if (results && results[0] === 'needupdate') {
343
- switch (entityType) {
344
- case 'template_entity': {
345
- // if the cache is invalid, update the cache
346
- return this.getEntities(null, null, null, null, (data, err) => {
347
- if (err) {
348
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Could not update entity: $VARIABLE$, cache', [entityType], null, null, null);
349
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
350
- return callback(null, errorObj);
351
- }
352
-
353
- // need to check the cache again since it has been updated
354
- return this.requestHandlerInst.iapVerifyAdapterCapability(entityType, actionType, entityId, (vcapable, verror) => {
355
- if (verror) {
356
- return callback(null, verror);
357
- }
358
-
359
- return this.capabilityResults(vcapable, callback);
360
- });
361
- });
362
- }
363
- default: {
364
- // unsupported entity type
365
- const result = [false];
366
-
367
- // put false in array for all entities
368
- if (Array.isArray(entityId)) {
369
- for (let e = 1; e < entityId.length; e += 1) {
370
- result.push(false);
371
- }
372
- }
373
-
374
- return callback(result);
375
- }
376
- }
377
- }
378
-
379
- // return the results
380
- return this.capabilityResults(results, callback);
381
- });
382
- }
383
-
384
- // if no entity id
385
- if (!entityId) {
386
- // need to check the cache again since it has been updated
387
- return this.requestHandlerInst.iapVerifyAdapterCapability(entityType, actionType, null, (vcapable, verror) => {
388
- if (verror) {
389
- return callback(null, verror);
390
- }
391
-
392
- return this.capabilityResults(vcapable, callback);
393
- });
329
+ try {
330
+ return super.iapActivateTasks(tasks, callback);
331
+ } catch (err) {
332
+ log.error(`${origin}: ${err}`);
333
+ return callback(null, err);
394
334
  }
335
+ }
395
336
 
396
- // if not caching
397
- switch (entityType) {
398
- case 'template_entity': {
399
- // need to get the entities to check
400
- return this.getEntities(null, null, null, null, (data, err) => {
401
- if (err) {
402
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Could not update entity: $VARIABLE$, cache', [entityType], null, null, null);
403
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
404
- return callback(null, errorObj);
405
- }
406
-
407
- // need to check the cache again since it has been updated
408
- return this.requestHandlerInst.iapVerifyAdapterCapability(entityType, actionType, null, (vcapable, verror) => {
409
- if (verror) {
410
- return callback(null, verror);
411
- }
412
-
413
- // is the entity in the list?
414
- const isEntity = this.entityInList(entityId, data.response, callback);
415
- const res = [];
416
-
417
- // not found
418
- for (let i = 0; i < isEntity.length; i += 1) {
419
- if (vcapable) {
420
- res.push(isEntity[i]);
421
- } else {
422
- res.push(false);
423
- }
424
- }
425
-
426
- return callback(res);
427
- });
428
- });
429
- }
430
- default: {
431
- // unsupported entity type
432
- const result = [false];
433
-
434
- // put false in array for all entities
435
- if (Array.isArray(entityId)) {
436
- for (let e = 1; e < entityId.length; e += 1) {
437
- result.push(false);
438
- }
439
- }
337
+ /* CACHE CALLS */
338
+ /**
339
+ * @summary Populate the cache for the given entities
340
+ *
341
+ * @function iapPopulateEntityCache
342
+ * @param {String/Array of Strings} entityType - the entity type(s) to populate
343
+ * @param {Callback} callback - whether the cache was updated or not for each entity type
344
+ *
345
+ * @returns status of the populate
346
+ */
347
+ iapPopulateEntityCache(entityTypes, callback) {
348
+ const meth = 'adapter-iapPopulateEntityCache';
349
+ const origin = `${this.id}-${meth}`;
350
+ log.trace(origin);
440
351
 
441
- return callback(result);
442
- }
352
+ try {
353
+ return super.iapPopulateEntityCache(entityTypes, callback);
354
+ } catch (err) {
355
+ log.error(`${origin}: ${err}`);
356
+ return callback(null, err);
443
357
  }
444
358
  }
445
359
 
446
360
  /**
447
- * @summary Updates the cache for all entities by call the get All entity method
448
- *
449
- * @function iapUpdateAdapterEntityCache
361
+ * @summary Retrieves data from cache for specified entity type
450
362
  *
363
+ * @function iapRetrieveEntitiesCache
364
+ * @param {String} entityType - entity of which to retrieve
365
+ * @param {Object} options - settings of which data to return and how to return it
366
+ * @param {Callback} callback - the data if it was retrieved
451
367
  */
452
- iapUpdateAdapterEntityCache() {
453
- const origin = `${this.id}-adapter-iapUpdateAdapterEntityCache`;
368
+ iapRetrieveEntitiesCache(entityType, options, callback) {
369
+ const meth = 'adapter-iapCheckEiapRetrieveEntitiesCachentityCached';
370
+ const origin = `${this.id}-${meth}`;
454
371
  log.trace(origin);
455
372
 
456
- if (this.caching) {
457
- // if the cache is invalid, update the cache
458
- this.getEntities(null, null, null, null, (data, err) => {
459
- if (err) {
460
- log.trace(`${origin}: Could not load template_entity into cache - ${err}`);
461
- }
462
- });
373
+ try {
374
+ return super.iapRetrieveEntitiesCache(entityType, options, callback);
375
+ } catch (err) {
376
+ log.error(`${origin}: ${err}`);
377
+ return callback(null, err);
463
378
  }
464
379
  }
465
380
 
381
+ /* BROKER CALLS */
466
382
  /**
467
383
  * @summary Determines if this adapter supports any in a list of entities
468
384
  *
@@ -597,6 +513,38 @@ class ClearcableNoms extends AdapterBaseCl {
597
513
  }
598
514
 
599
515
  /* GENERIC ADAPTER REQUEST - allows extension of adapter without new calls being added */
516
+ /**
517
+ * Makes the requested generic call
518
+ *
519
+ * @function iapExpandedGenericAdapterRequest
520
+ * @param {Object} metadata - metadata for the call (optional).
521
+ * Can be a stringified Object.
522
+ * @param {String} uriPath - the path of the api call - do not include the host, port, base path or version (optional)
523
+ * @param {String} restMethod - the rest method (GET, POST, PUT, PATCH, DELETE) (optional)
524
+ * @param {Object} pathVars - the parameters to be put within the url path (optional).
525
+ * Can be a stringified Object.
526
+ * @param {Object} queryData - the parameters to be put on the url (optional).
527
+ * Can be a stringified Object.
528
+ * @param {Object} requestBody - the body to add to the request (optional).
529
+ * Can be a stringified Object.
530
+ * @param {Object} addlHeaders - additional headers to be put on the call (optional).
531
+ * Can be a stringified Object.
532
+ * @param {getCallback} callback - a callback function to return the result (Generics)
533
+ * or the error
534
+ */
535
+ iapExpandedGenericAdapterRequest(metadata, uriPath, restMethod, pathVars, queryData, requestBody, addlHeaders, callback) {
536
+ const meth = 'adapter-iapExpandedGenericAdapterRequest';
537
+ const origin = `${this.id}-${meth}`;
538
+ log.trace(origin);
539
+
540
+ try {
541
+ return super.iapExpandedGenericAdapterRequest(metadata, uriPath, restMethod, pathVars, queryData, requestBody, addlHeaders, callback);
542
+ } catch (err) {
543
+ log.error(`${origin}: ${err}`);
544
+ return callback(null, err);
545
+ }
546
+ }
547
+
600
548
  /**
601
549
  * Makes the requested generic call
602
550
  *
@@ -617,93 +565,11 @@ class ClearcableNoms extends AdapterBaseCl {
617
565
  const origin = `${this.id}-${meth}`;
618
566
  log.trace(origin);
619
567
 
620
- if (this.suspended && this.suspendMode === 'error') {
621
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'AD.600', [], null, null, null);
622
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
623
- return callback(null, errorObj);
624
- }
625
-
626
- /* HERE IS WHERE YOU VALIDATE DATA */
627
- if (uriPath === undefined || uriPath === null || uriPath === '') {
628
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Missing Data', ['uriPath'], null, null, null);
629
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
630
- return callback(null, errorObj);
631
- }
632
- if (restMethod === undefined || restMethod === null || restMethod === '') {
633
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Missing Data', ['restMethod'], null, null, null);
634
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
635
- return callback(null, errorObj);
636
- }
637
-
638
- /* HERE IS WHERE YOU SET THE DATA TO PASS INTO REQUEST */
639
- // remove any leading / and split the uripath into path variables
640
- let myPath = uriPath;
641
- while (myPath.indexOf('/') === 0) {
642
- myPath = myPath.substring(1);
643
- }
644
- const pathVars = myPath.split('/');
645
- const queryParamsAvailable = queryData;
646
- const queryParams = {};
647
- const bodyVars = requestBody;
648
-
649
- // loop in template. long callback arg name to avoid identifier conflicts
650
- Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
651
- if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
652
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
653
- queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
654
- }
655
- });
656
-
657
- // set up the request object - payload, uriPathVars, uriQuery, uriOptions, addlHeaders
658
- const reqObj = {
659
- payload: bodyVars,
660
- uriPathVars: pathVars,
661
- uriQuery: queryParams,
662
- uriOptions: {}
663
- };
664
- // add headers if provided
665
- if (addlHeaders) {
666
- reqObj.addlHeaders = addlHeaders;
667
- }
668
-
669
- // determine the call and return flag
670
- let action = 'getGenerics';
671
- let returnF = true;
672
- if (restMethod.toUpperCase() === 'POST') {
673
- action = 'createGeneric';
674
- } else if (restMethod.toUpperCase() === 'PUT') {
675
- action = 'updateGeneric';
676
- } else if (restMethod.toUpperCase() === 'PATCH') {
677
- action = 'patchGeneric';
678
- } else if (restMethod.toUpperCase() === 'DELETE') {
679
- action = 'deleteGeneric';
680
- returnF = false;
681
- }
682
-
683
568
  try {
684
- // Make the call -
685
- // identifyRequest(entity, action, requestObj, returnDataFlag, callback)
686
- return this.requestHandlerInst.identifyRequest('.generic', action, reqObj, returnF, (irReturnData, irReturnError) => {
687
- // if we received an error or their is no response on the results
688
- // return an error
689
- if (irReturnError) {
690
- /* HERE IS WHERE YOU CAN ALTER THE ERROR MESSAGE */
691
- return callback(null, irReturnError);
692
- }
693
- if (!Object.hasOwnProperty.call(irReturnData, 'response')) {
694
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Invalid Response', ['genericAdapterRequest'], null, null, null);
695
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
696
- return callback(null, errorObj);
697
- }
698
-
699
- /* HERE IS WHERE YOU CAN ALTER THE RETURN DATA */
700
- // return the response
701
- return callback(irReturnData, null);
702
- });
703
- } catch (ex) {
704
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Caught Exception', null, null, null, ex);
705
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
706
- return callback(null, errorObj);
569
+ return super.genericAdapterRequest(uriPath, restMethod, queryData, requestBody, addlHeaders, callback);
570
+ } catch (err) {
571
+ log.error(`${origin}: ${err}`);
572
+ return callback(null, err);
707
573
  }
708
574
  }
709
575
 
@@ -727,94 +593,56 @@ class ClearcableNoms extends AdapterBaseCl {
727
593
  const origin = `${this.id}-${meth}`;
728
594
  log.trace(origin);
729
595
 
730
- if (this.suspended && this.suspendMode === 'error') {
731
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'AD.600', [], null, null, null);
732
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
733
- return callback(null, errorObj);
734
- }
735
-
736
- /* HERE IS WHERE YOU VALIDATE DATA */
737
- if (uriPath === undefined || uriPath === null || uriPath === '') {
738
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Missing Data', ['uriPath'], null, null, null);
739
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
740
- return callback(null, errorObj);
741
- }
742
- if (restMethod === undefined || restMethod === null || restMethod === '') {
743
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Missing Data', ['restMethod'], null, null, null);
744
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
745
- return callback(null, errorObj);
596
+ try {
597
+ return super.genericAdapterRequestNoBasePath(uriPath, restMethod, queryData, requestBody, addlHeaders, callback);
598
+ } catch (err) {
599
+ log.error(`${origin}: ${err}`);
600
+ return callback(null, err);
746
601
  }
602
+ }
747
603
 
748
- /* HERE IS WHERE YOU SET THE DATA TO PASS INTO REQUEST */
749
- // remove any leading / and split the uripath into path variables
750
- let myPath = uriPath;
751
- while (myPath.indexOf('/') === 0) {
752
- myPath = myPath.substring(1);
753
- }
754
- const pathVars = myPath.split('/');
755
- const queryParamsAvailable = queryData;
756
- const queryParams = {};
757
- const bodyVars = requestBody;
604
+ /* INVENTORY CALLS */
605
+ /**
606
+ * @summary run the adapter lint script to return the results.
607
+ *
608
+ * @function iapRunAdapterLint
609
+ * @param {Callback} callback - callback function
610
+ */
611
+ iapRunAdapterLint(callback) {
612
+ const meth = 'adapter-iapRunAdapterLint';
613
+ const origin = `${this.id}-${meth}`;
614
+ log.trace(origin);
758
615
 
759
- // loop in template. long callback arg name to avoid identifier conflicts
760
- Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
761
- if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
762
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
763
- queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
764
- }
765
- });
616
+ return super.iapRunAdapterLint(callback);
617
+ }
766
618
 
767
- // set up the request object - payload, uriPathVars, uriQuery, uriOptions, addlHeaders
768
- const reqObj = {
769
- payload: bodyVars,
770
- uriPathVars: pathVars,
771
- uriQuery: queryParams,
772
- uriOptions: {}
773
- };
774
- // add headers if provided
775
- if (addlHeaders) {
776
- reqObj.addlHeaders = addlHeaders;
777
- }
619
+ /**
620
+ * @summary run the adapter test scripts (baseunit and unit) to return the results.
621
+ * can not run integration as there can be implications with that.
622
+ *
623
+ * @function iapRunAdapterTests
624
+ * @param {Callback} callback - callback function
625
+ */
626
+ iapRunAdapterTests(callback) {
627
+ const meth = 'adapter-iapRunAdapterTests';
628
+ const origin = `${this.id}-${meth}`;
629
+ log.trace(origin);
778
630
 
779
- // determine the call and return flag
780
- let action = 'getGenericsNoBase';
781
- let returnF = true;
782
- if (restMethod.toUpperCase() === 'POST') {
783
- action = 'createGenericNoBase';
784
- } else if (restMethod.toUpperCase() === 'PUT') {
785
- action = 'updateGenericNoBase';
786
- } else if (restMethod.toUpperCase() === 'PATCH') {
787
- action = 'patchGenericNoBase';
788
- } else if (restMethod.toUpperCase() === 'DELETE') {
789
- action = 'deleteGenericNoBase';
790
- returnF = false;
791
- }
631
+ return super.iapRunAdapterTests(callback);
632
+ }
792
633
 
793
- try {
794
- // Make the call -
795
- // identifyRequest(entity, action, requestObj, returnDataFlag, callback)
796
- return this.requestHandlerInst.identifyRequest('.generic', action, reqObj, returnF, (irReturnData, irReturnError) => {
797
- // if we received an error or their is no response on the results
798
- // return an error
799
- if (irReturnError) {
800
- /* HERE IS WHERE YOU CAN ALTER THE ERROR MESSAGE */
801
- return callback(null, irReturnError);
802
- }
803
- if (!Object.hasOwnProperty.call(irReturnData, 'response')) {
804
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Invalid Response', ['genericAdapterRequestNoBasePath'], null, null, null);
805
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
806
- return callback(null, errorObj);
807
- }
634
+ /**
635
+ * @summary provide inventory information abbout the adapter
636
+ *
637
+ * @function iapGetAdapterInventory
638
+ * @param {Callback} callback - callback function
639
+ */
640
+ iapGetAdapterInventory(callback) {
641
+ const meth = 'adapter-iapGetAdapterInventory';
642
+ const origin = `${this.id}-${meth}`;
643
+ log.trace(origin);
808
644
 
809
- /* HERE IS WHERE YOU CAN ALTER THE RETURN DATA */
810
- // return the response
811
- return callback(irReturnData, null);
812
- });
813
- } catch (ex) {
814
- const errorObj = this.requestHandlerInst.formatErrorObject(this.id, meth, 'Caught Exception', null, null, null, ex);
815
- log.error(`${origin}: ${errorObj.IAPerror.displayString}`);
816
- return callback(null, errorObj);
817
- }
645
+ return super.iapGetAdapterInventory(callback);
818
646
  }
819
647
 
820
648
  /**
@@ -884,7 +712,7 @@ class ClearcableNoms extends AdapterBaseCl {
884
712
  // loop in template. long callback arg name to avoid identifier conflicts
885
713
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
886
714
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
887
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
715
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
888
716
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
889
717
  }
890
718
  });
@@ -960,7 +788,7 @@ class ClearcableNoms extends AdapterBaseCl {
960
788
  // loop in template. long callback arg name to avoid identifier conflicts
961
789
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
962
790
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
963
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
791
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
964
792
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
965
793
  }
966
794
  });
@@ -1042,7 +870,7 @@ class ClearcableNoms extends AdapterBaseCl {
1042
870
  // loop in template. long callback arg name to avoid identifier conflicts
1043
871
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1044
872
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1045
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
873
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1046
874
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1047
875
  }
1048
876
  });
@@ -1124,7 +952,7 @@ class ClearcableNoms extends AdapterBaseCl {
1124
952
  // loop in template. long callback arg name to avoid identifier conflicts
1125
953
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1126
954
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1127
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
955
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1128
956
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1129
957
  }
1130
958
  });
@@ -1206,7 +1034,7 @@ class ClearcableNoms extends AdapterBaseCl {
1206
1034
  // loop in template. long callback arg name to avoid identifier conflicts
1207
1035
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1208
1036
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1209
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1037
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1210
1038
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1211
1039
  }
1212
1040
  });
@@ -1288,7 +1116,7 @@ class ClearcableNoms extends AdapterBaseCl {
1288
1116
  // loop in template. long callback arg name to avoid identifier conflicts
1289
1117
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1290
1118
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1291
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1119
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1292
1120
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1293
1121
  }
1294
1122
  });
@@ -1370,7 +1198,7 @@ class ClearcableNoms extends AdapterBaseCl {
1370
1198
  // loop in template. long callback arg name to avoid identifier conflicts
1371
1199
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1372
1200
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1373
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1201
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1374
1202
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1375
1203
  }
1376
1204
  });
@@ -1452,7 +1280,7 @@ class ClearcableNoms extends AdapterBaseCl {
1452
1280
  // loop in template. long callback arg name to avoid identifier conflicts
1453
1281
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1454
1282
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1455
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1283
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1456
1284
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1457
1285
  }
1458
1286
  });
@@ -1534,7 +1362,7 @@ class ClearcableNoms extends AdapterBaseCl {
1534
1362
  // loop in template. long callback arg name to avoid identifier conflicts
1535
1363
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1536
1364
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1537
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1365
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1538
1366
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1539
1367
  }
1540
1368
  });
@@ -1616,7 +1444,7 @@ class ClearcableNoms extends AdapterBaseCl {
1616
1444
  // loop in template. long callback arg name to avoid identifier conflicts
1617
1445
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1618
1446
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1619
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1447
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1620
1448
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1621
1449
  }
1622
1450
  });
@@ -1698,7 +1526,7 @@ class ClearcableNoms extends AdapterBaseCl {
1698
1526
  // loop in template. long callback arg name to avoid identifier conflicts
1699
1527
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1700
1528
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1701
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1529
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1702
1530
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1703
1531
  }
1704
1532
  });
@@ -1792,7 +1620,7 @@ class ClearcableNoms extends AdapterBaseCl {
1792
1620
  // loop in template. long callback arg name to avoid identifier conflicts
1793
1621
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1794
1622
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1795
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1623
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1796
1624
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1797
1625
  }
1798
1626
  });
@@ -1874,7 +1702,7 @@ class ClearcableNoms extends AdapterBaseCl {
1874
1702
  // loop in template. long callback arg name to avoid identifier conflicts
1875
1703
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1876
1704
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1877
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1705
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1878
1706
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1879
1707
  }
1880
1708
  });
@@ -1950,7 +1778,7 @@ class ClearcableNoms extends AdapterBaseCl {
1950
1778
  // loop in template. long callback arg name to avoid identifier conflicts
1951
1779
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
1952
1780
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
1953
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1781
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1954
1782
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
1955
1783
  }
1956
1784
  });
@@ -2032,7 +1860,7 @@ class ClearcableNoms extends AdapterBaseCl {
2032
1860
  // loop in template. long callback arg name to avoid identifier conflicts
2033
1861
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2034
1862
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2035
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1863
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2036
1864
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2037
1865
  }
2038
1866
  });
@@ -2114,7 +1942,7 @@ class ClearcableNoms extends AdapterBaseCl {
2114
1942
  // loop in template. long callback arg name to avoid identifier conflicts
2115
1943
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2116
1944
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2117
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
1945
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2118
1946
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2119
1947
  }
2120
1948
  });
@@ -2196,7 +2024,7 @@ class ClearcableNoms extends AdapterBaseCl {
2196
2024
  // loop in template. long callback arg name to avoid identifier conflicts
2197
2025
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2198
2026
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2199
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2027
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2200
2028
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2201
2029
  }
2202
2030
  });
@@ -2278,7 +2106,7 @@ class ClearcableNoms extends AdapterBaseCl {
2278
2106
  // loop in template. long callback arg name to avoid identifier conflicts
2279
2107
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2280
2108
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2281
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2109
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2282
2110
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2283
2111
  }
2284
2112
  });
@@ -2360,7 +2188,7 @@ class ClearcableNoms extends AdapterBaseCl {
2360
2188
  // loop in template. long callback arg name to avoid identifier conflicts
2361
2189
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2362
2190
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2363
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2191
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2364
2192
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2365
2193
  }
2366
2194
  });
@@ -2436,7 +2264,7 @@ class ClearcableNoms extends AdapterBaseCl {
2436
2264
  // loop in template. long callback arg name to avoid identifier conflicts
2437
2265
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2438
2266
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2439
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2267
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2440
2268
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2441
2269
  }
2442
2270
  });
@@ -2518,7 +2346,7 @@ class ClearcableNoms extends AdapterBaseCl {
2518
2346
  // loop in template. long callback arg name to avoid identifier conflicts
2519
2347
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2520
2348
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2521
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2349
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2522
2350
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2523
2351
  }
2524
2352
  });
@@ -2600,7 +2428,7 @@ class ClearcableNoms extends AdapterBaseCl {
2600
2428
  // loop in template. long callback arg name to avoid identifier conflicts
2601
2429
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2602
2430
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2603
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2431
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2604
2432
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2605
2433
  }
2606
2434
  });
@@ -2682,7 +2510,7 @@ class ClearcableNoms extends AdapterBaseCl {
2682
2510
  // loop in template. long callback arg name to avoid identifier conflicts
2683
2511
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2684
2512
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2685
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2513
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2686
2514
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2687
2515
  }
2688
2516
  });
@@ -2764,7 +2592,7 @@ class ClearcableNoms extends AdapterBaseCl {
2764
2592
  // loop in template. long callback arg name to avoid identifier conflicts
2765
2593
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2766
2594
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2767
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2595
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2768
2596
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2769
2597
  }
2770
2598
  });
@@ -2846,7 +2674,7 @@ class ClearcableNoms extends AdapterBaseCl {
2846
2674
  // loop in template. long callback arg name to avoid identifier conflicts
2847
2675
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2848
2676
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2849
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2677
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2850
2678
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2851
2679
  }
2852
2680
  });
@@ -2928,7 +2756,7 @@ class ClearcableNoms extends AdapterBaseCl {
2928
2756
  // loop in template. long callback arg name to avoid identifier conflicts
2929
2757
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
2930
2758
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
2931
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2759
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2932
2760
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
2933
2761
  }
2934
2762
  });
@@ -3010,7 +2838,7 @@ class ClearcableNoms extends AdapterBaseCl {
3010
2838
  // loop in template. long callback arg name to avoid identifier conflicts
3011
2839
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
3012
2840
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
3013
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2841
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
3014
2842
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
3015
2843
  }
3016
2844
  });
@@ -3092,7 +2920,7 @@ class ClearcableNoms extends AdapterBaseCl {
3092
2920
  // loop in template. long callback arg name to avoid identifier conflicts
3093
2921
  Object.keys(queryParamsAvailable).forEach((thisKeyInQueryParamsAvailable) => {
3094
2922
  if (queryParamsAvailable[thisKeyInQueryParamsAvailable] !== undefined && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== null
3095
- && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
2923
+ && queryParamsAvailable[thisKeyInQueryParamsAvailable] !== '') {
3096
2924
  queryParams[thisKeyInQueryParamsAvailable] = queryParamsAvailable[thisKeyInQueryParamsAvailable];
3097
2925
  }
3098
2926
  });