@chainlink/external-adapter-framework 1.3.1 → 1.4.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.
- package/README.md +1 -1
- package/cache/index.d.ts +1 -0
- package/cache/index.js +18 -1
- package/cache/index.js.map +1 -1
- package/cache/response.js +1 -1
- package/cache/response.js.map +1 -1
- package/generator-adapter/generators/app/templates/src/transport/custombg.ts.ejs +6 -2
- package/generator-adapter/generators/app/templates/src/transport/customfg.ts.ejs +1 -11
- package/package.json +1 -1
- package/util/subscription-set/subscription-set.d.ts +1 -0
- package/util/subscription-set/subscription-set.js +3 -1
- package/util/subscription-set/subscription-set.js.map +1 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# EA Framework v3
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/@chainlink/external-adapter-framework)
|
|
4
|
-

|
|
5
5
|
|
|
6
6
|
Framework to create External adapters, microservices that serve as middleware to facilitate connections between Chainlink Nodes and Data Providers (DP).
|
|
7
7
|
|
package/cache/index.d.ts
CHANGED
|
@@ -82,6 +82,7 @@ export declare const calculateHttpRequestKey: <T extends import("../transports")
|
|
|
82
82
|
data: Record<string, unknown> | Record<string, unknown>[];
|
|
83
83
|
transportName: string;
|
|
84
84
|
}) => string;
|
|
85
|
+
export declare const calculateAdapterName: (adapterName: string, data: Record<string, unknown>) => string;
|
|
85
86
|
export declare const calculateFeedId: <T extends import("../transports").TransportGenerics>({ adapterSettings, }: {
|
|
86
87
|
adapterSettings: T["Settings"];
|
|
87
88
|
}, data: Record<string, unknown>) => string;
|
package/cache/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.pollResponseFromCache = exports.calculateFeedId = exports.calculateHttpRequestKey = exports.calculateCacheKey = void 0;
|
|
20
|
+
exports.pollResponseFromCache = exports.calculateFeedId = exports.calculateAdapterName = exports.calculateHttpRequestKey = exports.calculateCacheKey = void 0;
|
|
21
21
|
const crypto_1 = __importDefault(require("crypto"));
|
|
22
22
|
const util_1 = require("../util");
|
|
23
23
|
__exportStar(require("./factory"), exports);
|
|
@@ -56,6 +56,23 @@ const calculateKey = ({ data, endpointName, transportName, adapterSettings, }) =
|
|
|
56
56
|
: adapterSettings.DEFAULT_CACHE_KEY;
|
|
57
57
|
return `${endpointName}-${transportName}-${paramsKey}`;
|
|
58
58
|
};
|
|
59
|
+
const calculateAdapterName = (adapterName, data) => {
|
|
60
|
+
if (Object.keys(data).length === 0) {
|
|
61
|
+
logger.trace('Cannot generate Adapter Name without data, using default');
|
|
62
|
+
return adapterName;
|
|
63
|
+
}
|
|
64
|
+
if (data && typeof data !== 'object') {
|
|
65
|
+
logger.trace('Cannot generate Adapter Name without valid data, using default');
|
|
66
|
+
return adapterName;
|
|
67
|
+
}
|
|
68
|
+
if (data['adapterNameOverride'] && typeof data['adapterNameOverride'] === 'string') {
|
|
69
|
+
return data['adapterNameOverride'].toUpperCase();
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
return adapterName;
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
exports.calculateAdapterName = calculateAdapterName;
|
|
59
76
|
const calculateFeedId = ({ adapterSettings, }, data) => {
|
|
60
77
|
if (Object.keys(data).length === 0) {
|
|
61
78
|
logger.trace(`Cannot generate Feed ID without data`);
|
package/cache/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"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"}
|
package/cache/response.js
CHANGED
|
@@ -83,7 +83,7 @@ class ResponseCache {
|
|
|
83
83
|
if (this.adapterSettings.METRICS_ENABLED &&
|
|
84
84
|
this.adapterSettings.EXPERIMENTAL_METRICS_ENABLED) {
|
|
85
85
|
response.meta = {
|
|
86
|
-
adapterName: this.adapterName,
|
|
86
|
+
adapterName: (0, _1.calculateAdapterName)(this.adapterName, r.params),
|
|
87
87
|
metrics: {
|
|
88
88
|
feedId: (0, _1.calculateFeedId)({
|
|
89
89
|
adapterSettings: this.adapterSettings,
|
package/cache/response.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/cache/response.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,kCASgB;AAChB,6EAAmD;AAMnD,+CAA+C;AAC/C,
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/cache/response.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,14 @@ import { TransportDependencies } from '@chainlink/external-adapter-framework/tra
|
|
|
2
2
|
import { ResponseCache } from '@chainlink/external-adapter-framework/cache/response'
|
|
3
3
|
import { Requester } from '@chainlink/external-adapter-framework/util/requester'
|
|
4
4
|
import {
|
|
5
|
-
AdapterResponse, sleep
|
|
5
|
+
AdapterResponse, sleep, makeLogger
|
|
6
6
|
} from '@chainlink/external-adapter-framework/util'
|
|
7
7
|
import { SubscriptionTransport } from '@chainlink/external-adapter-framework/transports/abstract/subscription'
|
|
8
8
|
import { EndpointContext } from '@chainlink/external-adapter-framework/adapter'
|
|
9
9
|
import { BaseEndpointTypes, inputParameters } from '../endpoint/<%= inputEndpointName %>'
|
|
10
|
+
import { AdapterError } from '@chainlink/external-adapter-framework/validation/error'
|
|
11
|
+
|
|
12
|
+
const logger = makeLogger('CustomTransport')
|
|
10
13
|
|
|
11
14
|
type RequestParams = typeof inputParameters.validated
|
|
12
15
|
|
|
@@ -63,8 +66,9 @@ export class CustomTransport extends SubscriptionTransport<CustomTransportTypes>
|
|
|
63
66
|
response = await this._handleRequest(param)
|
|
64
67
|
} catch (e) {
|
|
65
68
|
const errorMessage = e instanceof Error ? e.message : 'Unknown error occurred'
|
|
69
|
+
logger.error(e, errorMessage)
|
|
66
70
|
response = {
|
|
67
|
-
statusCode: 502,
|
|
71
|
+
statusCode: (e as AdapterError)?.statusCode || 502,
|
|
68
72
|
errorMessage,
|
|
69
73
|
timestamps: {
|
|
70
74
|
providerDataRequestedUnixMs: 0,
|
|
@@ -51,7 +51,7 @@ export class CustomTransport implements Transport<CustomTransportTypes> {
|
|
|
51
51
|
// request, process it,save it in the cache and return to user.
|
|
52
52
|
<% } -%>
|
|
53
53
|
async foregroundExecute(
|
|
54
|
-
|
|
54
|
+
_: AdapterRequest<typeof inputParameters.validated>
|
|
55
55
|
): Promise<AdapterResponse<CustomTransportTypes['Response']>> {
|
|
56
56
|
|
|
57
57
|
// Custom transport logic
|
|
@@ -68,16 +68,6 @@ export class CustomTransport implements Transport<CustomTransportTypes> {
|
|
|
68
68
|
providerIndicatedTimeUnixMs: undefined,
|
|
69
69
|
},
|
|
70
70
|
}
|
|
71
|
-
<% if (includeComments) { -%>
|
|
72
|
-
// Once the response object is ready, write it to the cache. Use the transport name, request payload and constructed response. Once cache is
|
|
73
|
-
// saved, return the response to the user.
|
|
74
|
-
<% } -%>
|
|
75
|
-
await this.responseCache.write(this.name, [
|
|
76
|
-
{
|
|
77
|
-
params: req.requestContext.data,
|
|
78
|
-
response,
|
|
79
|
-
},
|
|
80
|
-
])
|
|
81
71
|
|
|
82
72
|
return response
|
|
83
73
|
}
|
package/package.json
CHANGED
|
@@ -16,6 +16,7 @@ export declare class SubscriptionSetFactory {
|
|
|
16
16
|
private redisClient?;
|
|
17
17
|
private adapterName?;
|
|
18
18
|
private capacity;
|
|
19
|
+
private cachePrefix;
|
|
19
20
|
constructor(adapterSettings: AdapterSettings, adapterName: string, redisClient?: Redis);
|
|
20
21
|
buildSet<T>(endpointName: string, transportName: string): SubscriptionSet<T>;
|
|
21
22
|
}
|
|
@@ -9,6 +9,7 @@ class SubscriptionSetFactory {
|
|
|
9
9
|
this.redisClient = redisClient;
|
|
10
10
|
this.adapterName = adapterName;
|
|
11
11
|
this.capacity = adapterSettings.SUBSCRIPTION_SET_MAX_ITEMS;
|
|
12
|
+
this.cachePrefix = adapterSettings.CACHE_PREFIX;
|
|
12
13
|
}
|
|
13
14
|
buildSet(endpointName, transportName) {
|
|
14
15
|
switch (this.cacheType) {
|
|
@@ -19,7 +20,8 @@ class SubscriptionSetFactory {
|
|
|
19
20
|
throw new Error('Redis client undefined. Cannot create Redis subscription set');
|
|
20
21
|
}
|
|
21
22
|
// Identifier key used for the subscription set in redis
|
|
22
|
-
const
|
|
23
|
+
const cachePrefix = this.cachePrefix ? `${this.cachePrefix}-` : '';
|
|
24
|
+
const subscriptionSetKey = `${cachePrefix}${this.adapterName}-${endpointName}-${transportName}-subscriptionSet`;
|
|
23
25
|
return new redis_sorted_set_1.RedisSubscriptionSet(this.redisClient, subscriptionSetKey);
|
|
24
26
|
}
|
|
25
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscription-set.js","sourceRoot":"","sources":["../../../../src/util/subscription-set/subscription-set.ts"],"names":[],"mappings":";;;AAGA,+DAAyD;AACzD,yDAAyD;AAezD,MAAa,sBAAsB;
|
|
1
|
+
{"version":3,"file":"subscription-set.js","sourceRoot":"","sources":["../../../../src/util/subscription-set/subscription-set.ts"],"names":[],"mappings":";;;AAGA,+DAAyD;AACzD,yDAAyD;AAezD,MAAa,sBAAsB;IAOjC,YAAY,eAAgC,EAAE,WAAmB,EAAE,WAAmB;QACpF,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,UAAU,CAAA;QAC3C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,0BAA0B,CAAA;QAC1D,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,YAAY,CAAA;IACjD,CAAC;IAED,QAAQ,CAAI,YAAoB,EAAE,aAAqB;QACrD,QAAQ,IAAI,CAAC,SAAS,EAAE;YACtB,KAAK,OAAO;gBACV,OAAO,IAAI,uCAAiB,CAAI,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChD,KAAK,OAAO,CAAC,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;iBAChF;gBACD,wDAAwD;gBACxD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBAClE,MAAM,kBAAkB,GAAG,GAAG,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,YAAY,IAAI,aAAa,kBAAkB,CAAA;gBAC/G,OAAO,IAAI,uCAAoB,CAAI,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;aACzE;SACF;IACH,CAAC;CACF;AA9BD,wDA8BC"}
|