MCPcopy Create free account
hub / github.com/chain/Core / mockHsmKeysAPI

Function mockHsmKeysAPI

sdk/node/src/api/mockHsmKeys.js:28–81  ·  view source on GitHub ↗
(client)

Source from the content-addressed store, hash-verified

26 */
27
28const mockHsmKeysAPI = (client) => {
29 return {
30 /**
31 * Create a new MockHsm key.
32 *
33 * @param {Object} [params={}] - Parameters for MockHSM key creation.
34 * @param {String} params.alias - User specified, unique identifier.
35 * @param {objectCallback} [callback] - Optional callback. Use instead of Promise return value as desired.
36 * @returns {Promise<MockHsmKey>} Newly created MockHSM key.
37 */
38 create: (params, cb) => {
39 let body = Object.assign({ clientToken: uuid.v4() }, params)
40 return shared.tryCallback(
41 client.request('/mockhsm/create-key', body).then(data => data),
42 cb
43 )
44 },
45
46 /**
47 * Get one page of MockHsm keys, optionally filtered to specified aliases.
48 *
49 * <b>NOTE</b>: The <code>filter</code> parameter of {@link Query} is unavailable for the MockHSM.
50 *
51 * @param {Object} params={} - Filter and pagination information.
52 * @param {Array.<string>} params.aliases - List of requested aliases, max 200.
53 * @param {Number} params.pageSize - Number of items to return in result set.
54 * @param {pageCallback} [callback] - Optional callback. Use instead of Promise return value as desired.
55 * @returns {Promise<Page<MockHsmKey>>} Requested page of results.
56 */
57 query: (params, cb) => {
58 if (Array.isArray(params.aliases) && params.aliases.length > 0) {
59 params.pageSize = params.aliases.length
60 }
61
62 return shared.query(client, 'mockHsm.keys', '/mockhsm/list-keys', params, {cb})
63 },
64
65 /**
66 * Request all MockHsm keys matching the specified query, calling the
67 * supplied processor callback with each item individually.
68 *
69 * <b>NOTE</b>: The <code>filter</code> parameter of {@link Query} is unavailable for the MockHSM.
70 *
71 * @param {Object} params={} - Filter and pagination information.
72 * @param {Array.<string>} params.aliases - List of requested aliases, max 200.
73 * @param {Number} params.pageSize - Number of items to return in result set.
74 * @param {QueryProcessor<MockHsmKey>} processor - Processing callback.
75 * @param {objectCallback} [callback] - Optional callback. Use instead of Promise return value as desired.
76 * @returns {Promise} A promise resolved upon processing of all items, or
77 * rejected on error.
78 */
79 queryAll: (params, processor, cb) => shared.queryAll(client, 'mockHsm.keys', params, processor, cb),
80 }
81}
82
83module.exports = mockHsmKeysAPI

Callers 1

constructorMethod · 0.85

Calls 2

queryMethod · 0.80
requestMethod · 0.45

Tested by

no test coverage detected