kuzzle-device-manager 2.4.0-beta.5 → 2.4.0-beta.7

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 (62) hide show
  1. package/dist/lib/modules/asset/AssetHistoryService.d.ts +2 -4
  2. package/dist/lib/modules/asset/AssetHistoryService.js +2 -6
  3. package/dist/lib/modules/asset/AssetHistoryService.js.map +1 -1
  4. package/dist/lib/modules/asset/AssetService.d.ts +10 -26
  5. package/dist/lib/modules/asset/AssetService.js +142 -166
  6. package/dist/lib/modules/asset/AssetService.js.map +1 -1
  7. package/dist/lib/modules/asset/AssetsController.d.ts +2 -2
  8. package/dist/lib/modules/asset/AssetsController.js +7 -26
  9. package/dist/lib/modules/asset/AssetsController.js.map +1 -1
  10. package/dist/lib/modules/asset/model/AssetSerializer.js +1 -0
  11. package/dist/lib/modules/asset/model/AssetSerializer.js.map +1 -1
  12. package/dist/lib/modules/asset/types/AssetApi.d.ts +4 -1
  13. package/dist/lib/modules/asset/types/AssetContent.d.ts +1 -1
  14. package/dist/lib/modules/decoder/PayloadService.d.ts +2 -5
  15. package/dist/lib/modules/decoder/PayloadService.js +6 -13
  16. package/dist/lib/modules/decoder/PayloadService.js.map +1 -1
  17. package/dist/lib/modules/device/DeviceService.d.ts +19 -44
  18. package/dist/lib/modules/device/DeviceService.js +106 -69
  19. package/dist/lib/modules/device/DeviceService.js.map +1 -1
  20. package/dist/lib/modules/device/DevicesController.js +10 -40
  21. package/dist/lib/modules/device/DevicesController.js.map +1 -1
  22. package/dist/lib/modules/device/collections/deviceMappings.d.ts +2 -46
  23. package/dist/lib/modules/device/collections/deviceMappings.js.map +1 -1
  24. package/dist/lib/modules/measure/MeasureService.d.ts +2 -6
  25. package/dist/lib/modules/measure/MeasureService.js +2 -9
  26. package/dist/lib/modules/measure/MeasureService.js.map +1 -1
  27. package/dist/lib/modules/measure/collections/measuresMappings.d.ts +15 -0
  28. package/dist/lib/modules/measure/collections/measuresMappings.js +9 -0
  29. package/dist/lib/modules/measure/collections/measuresMappings.js.map +1 -1
  30. package/dist/lib/modules/model/ModelService.d.ts +2 -4
  31. package/dist/lib/modules/model/ModelService.js +5 -9
  32. package/dist/lib/modules/model/ModelService.js.map +1 -1
  33. package/dist/lib/modules/plugin/DeviceManagerEngine.js +5 -6
  34. package/dist/lib/modules/plugin/DeviceManagerEngine.js.map +1 -1
  35. package/dist/lib/modules/plugin/DeviceManagerPlugin.js +8 -0
  36. package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
  37. package/dist/lib/modules/plugin/exports.d.ts +1 -1
  38. package/dist/lib/modules/plugin/exports.js +1 -1
  39. package/dist/lib/modules/plugin/exports.js.map +1 -1
  40. package/dist/lib/modules/plugin/index.d.ts +1 -2
  41. package/dist/lib/modules/plugin/index.js +1 -2
  42. package/dist/lib/modules/plugin/index.js.map +1 -1
  43. package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +9 -1
  44. package/dist/lib/modules/plugin/types/Pipes.d.ts +17 -0
  45. package/dist/lib/modules/plugin/types/Pipes.js +3 -0
  46. package/dist/lib/modules/plugin/types/Pipes.js.map +1 -0
  47. package/dist/lib/modules/plugin/types/exports.d.ts +1 -0
  48. package/dist/lib/modules/plugin/types/exports.js +18 -0
  49. package/dist/lib/modules/plugin/types/exports.js.map +1 -0
  50. package/dist/lib/modules/plugin/types/index.d.ts +3 -0
  51. package/dist/lib/modules/plugin/types/index.js +20 -0
  52. package/dist/lib/modules/plugin/types/index.js.map +1 -0
  53. package/dist/lib/modules/shared/services/BaseService.d.ts +67 -0
  54. package/dist/lib/modules/shared/services/BaseService.js +136 -0
  55. package/dist/lib/modules/shared/services/BaseService.js.map +1 -0
  56. package/dist/lib/modules/shared/services/index.d.ts +1 -0
  57. package/dist/lib/modules/shared/services/index.js +1 -0
  58. package/dist/lib/modules/shared/services/index.js.map +1 -1
  59. package/package.json +1 -1
  60. package/dist/lib/modules/shared/utils/recoveryQueue.d.ts +0 -23
  61. package/dist/lib/modules/shared/utils/recoveryQueue.js +0 -44
  62. package/dist/lib/modules/shared/utils/recoveryQueue.js.map +0 -1
@@ -1,9 +1,7 @@
1
1
  import { DeviceManagerPlugin } from "../plugin";
2
+ import { BaseService } from "../shared";
2
3
  import { AssetHistoryContent, AssetHistoryEvent } from "./types/AssetHistoryContent";
3
- export declare class AssetHistoryService {
4
- private context;
5
- private config;
6
- private get sdk();
4
+ export declare class AssetHistoryService extends BaseService {
7
5
  constructor(plugin: DeviceManagerPlugin);
8
6
  add<TAssetHistoryEvent extends AssetHistoryEvent>(engineId: string, histories: AssetHistoryContent[]): Promise<void>;
9
7
  }
@@ -3,13 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AssetHistoryService = void 0;
4
4
  const plugin_1 = require("../plugin");
5
5
  const shared_1 = require("../shared");
6
- class AssetHistoryService {
7
- get sdk() {
8
- return this.context.accessors.sdk;
9
- }
6
+ class AssetHistoryService extends shared_1.BaseService {
10
7
  constructor(plugin) {
11
- this.context = plugin.context;
12
- this.config = plugin.config;
8
+ super(plugin);
13
9
  (0, shared_1.onAsk)("ask:device-manager:asset:history:add", async ({ engineId, histories }) => this.add(engineId, histories));
14
10
  }
15
11
  async add(engineId, histories) {
@@ -1 +1 @@
1
- {"version":3,"file":"AssetHistoryService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetHistoryService.ts"],"names":[],"mappings":";;;AAGA,sCAImB;AACnB,sCAAkC;AAQlC,MAAa,mBAAmB;IAI9B,IAAY,GAAG;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC;IACpC,CAAC;IAED,YAAY,MAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAE5B,IAAA,cAAK,EACH,sCAAsC,EACtC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CACjE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CACP,QAAgB,EAChB,SAAgC;QAEhC,MAAM,QAAQ,GAEV,EAAE,CAAC;QAEP,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,SAAS,EAAE;YACvD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE;oBACJ,KAAK;oBACL,KAAK;oBACL,EAAE;oBACF,SAAS;iBACV;aACF,CAAC,CAAC;SACJ;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAC7B,QAAQ,EACR,2BAAkB,CAAC,cAAc,EACjC,QAAQ,EACR,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;IACJ,CAAC;CACF;AA5CD,kDA4CC"}
1
+ {"version":3,"file":"AssetHistoryService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetHistoryService.ts"],"names":[],"mappings":";;;AAEA,sCAAoE;AACpE,sCAA+C;AAQ/C,MAAa,mBAAoB,SAAQ,oBAAW;IAClD,YAAY,MAA2B;QACrC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAA,cAAK,EACH,sCAAsC,EACtC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CACjE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CACP,QAAgB,EAChB,SAAgC;QAEhC,MAAM,QAAQ,GAEV,EAAE,CAAC;QAEP,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,SAAS,EAAE;YACvD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE;oBACJ,KAAK;oBACL,KAAK;oBACL,EAAE;oBACF,SAAS;iBACV;aACF,CAAC,CAAC;SACJ;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAC7B,QAAQ,EACR,2BAAkB,CAAC,cAAc,EACjC,QAAQ,EACR,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;IACJ,CAAC;CACF;AApCD,kDAoCC"}
@@ -1,39 +1,23 @@
1
- import { User } from "kuzzle";
1
+ import { KuzzleRequest, User } from "kuzzle";
2
2
  import { JSONObject, KDocument, KHit, SearchResult, mReplaceResponse } from "kuzzle-sdk";
3
3
  import { DeviceManagerPlugin } from "../plugin";
4
- import { Metadata } from "../shared";
4
+ import { Metadata, BaseService, SearchParams } from "../shared";
5
5
  import { AssetHistoryService } from "./AssetHistoryService";
6
6
  import { AssetContent } from "./types/AssetContent";
7
- export declare class AssetService {
8
- private context;
9
- private config;
7
+ import { ApiAssetMigrateTenantResult } from "./types/AssetApi";
8
+ export declare class AssetService extends BaseService {
10
9
  private assetHistoryService;
11
- private get sdk();
12
- private get app();
13
- private get impersonatedSdk();
14
10
  constructor(plugin: DeviceManagerPlugin, assetHistoryService: AssetHistoryService);
15
11
  registerAskEvents(): void;
16
- get(engineId: string, assetId: string): Promise<KDocument<AssetContent>>;
12
+ get(engineId: string, assetId: string, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
17
13
  /**
18
14
  * Updates an asset metadata
19
15
  */
20
- update(user: User, engineId: string, assetId: string, metadata: Metadata, { refresh }: {
21
- refresh: any;
22
- }): Promise<KDocument<AssetContent>>;
23
- create(user: User, engineId: string, model: string, reference: string, metadata: JSONObject, { refresh }: {
24
- refresh: any;
25
- }): Promise<KDocument<AssetContent>>;
26
- delete(user: User, engineId: string, assetId: string, { refresh, strict }: {
27
- refresh: any;
28
- strict: boolean;
29
- }): Promise<void>;
30
- search(engineId: string, searchBody: JSONObject, { from, size, scroll, lang, }: {
31
- from?: number;
32
- size?: number;
33
- scroll?: string;
34
- lang?: string;
35
- }): Promise<SearchResult<KHit<AssetContent>>>;
36
- migrateTenant(user: User, assetsList: string[], engineId: string, newEngineId: string): Promise<void>;
16
+ update(engineId: string, assetId: string, metadata: Metadata, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
17
+ create(engineId: string, model: string, reference: string, metadata: JSONObject, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
18
+ delete(engineId: string, assetId: string, request: KuzzleRequest): Promise<void>;
19
+ search(engineId: string, searchParams: SearchParams, request: KuzzleRequest): Promise<SearchResult<KHit<AssetContent>>>;
20
+ migrateTenant(user: User, assetsList: string[], engineId: string, newEngineId: string): Promise<ApiAssetMigrateTenantResult>;
37
21
  /**
38
22
  * Replace an asset metadata
39
23
  */
@@ -9,42 +9,35 @@ const lodash_1 = __importDefault(require("lodash"));
9
9
  const plugin_1 = require("../plugin");
10
10
  const shared_1 = require("../shared");
11
11
  const AssetSerializer_1 = require("./model/AssetSerializer");
12
- const recoveryQueue_1 = require("../shared/utils/recoveryQueue");
13
- class AssetService {
14
- get sdk() {
15
- return this.context.accessors.sdk;
16
- }
17
- get app() {
18
- return global.app;
19
- }
20
- get impersonatedSdk() {
21
- return (user) => {
22
- if (user?._id) {
23
- return this.sdk.as(user, { checkRights: false });
24
- }
25
- return this.sdk;
26
- };
27
- }
12
+ class AssetService extends shared_1.BaseService {
28
13
  constructor(plugin, assetHistoryService) {
29
- this.context = plugin.context;
30
- this.config = plugin.config;
14
+ super(plugin);
31
15
  this.assetHistoryService = assetHistoryService;
32
16
  this.registerAskEvents();
33
17
  }
34
18
  registerAskEvents() {
35
19
  (0, shared_1.onAsk)("ask:device-manager:asset:refresh-model", this.refreshModel.bind(this));
36
20
  }
37
- async get(engineId, assetId) {
38
- return this.sdk.document.get(engineId, plugin_1.InternalCollection.ASSETS, assetId);
21
+ async get(engineId, assetId, request) {
22
+ return this.getDocument(request, assetId, {
23
+ collection: plugin_1.InternalCollection.ASSETS,
24
+ engineId,
25
+ });
39
26
  }
40
27
  /**
41
28
  * Updates an asset metadata
42
29
  */
43
- async update(user, engineId, assetId, metadata, { refresh }) {
30
+ async update(engineId, assetId, metadata, request) {
44
31
  return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
45
- const asset = await this.get(engineId, assetId);
32
+ const asset = await this.get(engineId, assetId, request);
46
33
  const updatedPayload = await this.app.trigger("device-manager:asset:update:before", { asset, metadata });
47
- const updatedAsset = await this.impersonatedSdk(user).document.update(engineId, plugin_1.InternalCollection.ASSETS, assetId, { metadata: updatedPayload.metadata }, { refresh, source: true });
34
+ const updatedAsset = await this.updateDocument(request, {
35
+ _id: assetId,
36
+ _source: { metadata: updatedPayload.metadata },
37
+ }, {
38
+ collection: plugin_1.InternalCollection.ASSETS,
39
+ engineId,
40
+ }, { source: true });
48
41
  await this.assetHistoryService.add(engineId, [
49
42
  {
50
43
  asset: updatedAsset._source,
@@ -65,7 +58,7 @@ class AssetService {
65
58
  return updatedAsset;
66
59
  });
67
60
  }
68
- async create(user, engineId, model, reference, metadata, { refresh }) {
61
+ async create(engineId, model, reference, metadata, request) {
69
62
  const assetId = AssetSerializer_1.AssetSerializer.id(model, reference);
70
63
  return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
71
64
  const engine = await this.getEngine(engineId);
@@ -81,13 +74,21 @@ class AssetService {
81
74
  for (const { name } of assetModel.asset.measures) {
82
75
  measures[name] = null;
83
76
  }
84
- const asset = await this.impersonatedSdk(user).document.create(engineId, plugin_1.InternalCollection.ASSETS, {
85
- linkedDevices: [],
86
- measures,
87
- metadata: { ...assetMetadata, ...metadata },
88
- model,
89
- reference,
90
- }, assetId, { refresh });
77
+ const asset = await this.createDocument(request, {
78
+ _id: assetId,
79
+ _source: {
80
+ groups: [],
81
+ lastMeasuredAt: null,
82
+ linkedDevices: [],
83
+ measures,
84
+ metadata: { ...assetMetadata, ...metadata },
85
+ model,
86
+ reference,
87
+ },
88
+ }, {
89
+ collection: plugin_1.InternalCollection.ASSETS,
90
+ engineId,
91
+ });
91
92
  await this.assetHistoryService.add(engineId, [
92
93
  {
93
94
  asset: asset._source,
@@ -104,160 +105,135 @@ class AssetService {
104
105
  return asset;
105
106
  });
106
107
  }
107
- async delete(user, engineId, assetId, { refresh, strict }) {
108
+ async delete(engineId, assetId, request) {
109
+ const user = request.getUser();
110
+ const strict = request.getBoolean("strict");
108
111
  return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
109
- const asset = await this.get(engineId, assetId);
112
+ const asset = await this.get(engineId, assetId, request);
110
113
  if (strict && asset._source.linkedDevices.length !== 0) {
111
114
  throw new kuzzle_1.BadRequestError(`Asset "${assetId}" is still linked to devices.`);
112
115
  }
113
116
  for (const { _id: deviceId } of asset._source.linkedDevices) {
114
117
  await (0, shared_1.ask)("ask:device-manager:device:unlink-asset", { deviceId, user });
115
118
  }
116
- await this.sdk.document.delete(engineId, plugin_1.InternalCollection.ASSETS, assetId, {
117
- refresh,
119
+ await this.deleteDocument(request, assetId, {
120
+ collection: plugin_1.InternalCollection.ASSETS,
121
+ engineId,
118
122
  });
119
123
  });
120
124
  }
121
- async search(engineId, searchBody, { from, size, scroll, lang, }) {
122
- const result = await this.sdk.document.search(engineId, plugin_1.InternalCollection.ASSETS, searchBody, { from, lang, scroll, size });
123
- return result;
125
+ async search(engineId, searchParams, request) {
126
+ return await this.searchDocument(request, searchParams, {
127
+ collection: plugin_1.InternalCollection.ASSETS,
128
+ engineId,
129
+ });
124
130
  }
125
131
  async migrateTenant(user, assetsList, engineId, newEngineId) {
126
- return (0, shared_1.lock)(`engine:${engineId}:${newEngineId}`, async () => {
127
- const recovery = new recoveryQueue_1.RecoveryQueue();
132
+ let errors = [];
133
+ let successes = [];
134
+ //Sanity check
135
+ if (assetsList.length === 0) {
136
+ throw new kuzzle_1.BadRequestError("No assets to migrate");
137
+ }
138
+ await (0, shared_1.lock)(`engine:${engineId}:${newEngineId}`, async () => {
128
139
  if (!user.profileIds.includes("admin")) {
129
140
  throw new kuzzle_1.BadRequestError(`User ${user._id} is not authorized to migrate assets`);
130
141
  }
131
- try {
132
- // check if tenant destination of the the same group
133
- const engine = await this.getEngine(engineId);
134
- const newEngine = await this.getEngine(newEngineId);
135
- if (engine.group !== newEngine.group) {
136
- throw new kuzzle_1.BadRequestError(`Engine ${newEngineId} is not in the same group as ${engineId}`);
137
- }
138
- if (assetsList.length === 0) {
139
- throw new kuzzle_1.BadRequestError("No assets to migrate");
140
- }
141
- const assets = await this.sdk.document.mGet(engineId, plugin_1.InternalCollection.ASSETS, assetsList);
142
- // check if the assets exists in the other engine
143
- const existingAssets = await this.sdk.document.mGet(newEngineId, plugin_1.InternalCollection.ASSETS, assetsList);
144
- if (existingAssets.successes.length > 0) {
145
- throw new kuzzle_1.BadRequestError(`Assets ${existingAssets.successes
146
- .map((asset) => asset._id)
147
- .join(", ")} already exists in engine ${newEngineId}`);
148
- }
149
- const assetsToMigrate = assets.successes.map((asset) => ({
150
- _id: asset._id,
151
- body: asset._source,
152
- }));
153
- const devices = await this.sdk.document.search(engineId, plugin_1.InternalCollection.DEVICES, {
154
- query: {
155
- bool: {
156
- filter: {
157
- terms: {
158
- assetId: assetsList,
159
- },
160
- },
161
- },
162
- },
163
- });
164
- // Map linked devices for assets.
165
- const assetLinkedDevices = assets.successes
166
- .filter((asset) => asset._source.linkedDevices.length > 0)
167
- .map((asset) => ({
168
- assetId: asset._id,
169
- linkedDevices: asset._source.linkedDevices,
170
- }));
171
- // Extra recovery step to relink back assets to their devices in case of rollback
172
- recovery.addRecovery(async () => {
173
- // Link the devices to the new assets
174
- const promises = [];
175
- for (const asset of assetLinkedDevices) {
176
- const assetId = asset.assetId;
177
- for (const device of asset.linkedDevices) {
178
- const deviceId = device._id;
179
- const measureNames = device.measureNames;
180
- promises.push((0, shared_1.ask)("ask:device-manager:device:link-asset", {
181
- assetId,
182
- deviceId,
183
- engineId,
184
- measureNames: measureNames,
185
- user,
186
- }));
187
- }
188
- }
189
- await Promise.all(promises);
190
- });
191
- // detach from current tenant
192
- await Promise.all(devices.hits.map((device) => {
193
- return (0, shared_1.ask)("ask:device-manager:device:detach-engine", { deviceId: device._id, user });
194
- }));
195
- // Attach to new tenant
196
- await Promise.all(devices.hits.map((device) => {
197
- return (0, shared_1.ask)("ask:device-manager:device:attach-engine", { deviceId: device._id, engineId: newEngineId, user });
142
+ // check if tenant destination is in the same group
143
+ const engine = await this.getEngine(engineId);
144
+ const newEngine = await this.getEngine(newEngineId);
145
+ if (engine.group !== newEngine.group) {
146
+ throw new kuzzle_1.BadRequestError(`Engine ${newEngineId} is not in the same group as ${engineId}`);
147
+ }
148
+ //First of all, as mCreate seems to be buggy, ensure some assets don't
149
+ //already exists in the destination tenant
150
+ const assetsCheck = await this.sdk.document.mGet(newEngineId, plugin_1.InternalCollection.ASSETS, assetsList);
151
+ const assetsCheckedIdExisting = assetsCheck.successes.map((a) => a._id);
152
+ errors = [...assetsCheckedIdExisting];
153
+ //Get all assets to migrate
154
+ const assetsCheckedList = assetsList.filter((id) => !assetsCheckedIdExisting.includes(id));
155
+ const assets = await this.sdk.document.mGet(engineId, plugin_1.InternalCollection.ASSETS, assetsCheckedList);
156
+ errors = errors.concat(...assets.errors);
157
+ if (assets.successes.length === 0) {
158
+ this.app.log.error("No assets found to migrate");
159
+ return { errors, successes };
160
+ }
161
+ //Get all the asset content, in order to create thm by batch
162
+ const assetsContent = assets.successes.map((asset) => ({
163
+ _id: asset._id,
164
+ body: asset._source,
165
+ }));
166
+ //We want to create the new asset with linked devices and groups empty
167
+ const assetsContentCopy = lodash_1.default.cloneDeep(assetsContent);
168
+ for (const asset of assetsContentCopy) {
169
+ asset.body.linkedDevices = [];
170
+ asset.body.groups = [];
171
+ }
172
+ //Even if they exist in the destination tenant, try creating them all
173
+ //using batch
174
+ const assetsCreated = await this.sdk.document.mCreate(newEngineId, plugin_1.InternalCollection.ASSETS, assetsContentCopy);
175
+ //We consider here we will return as success what we have been able
176
+ //to create, and related errors
177
+ const assetsCreatedId = assetsCreated.successes.map((a) => a._id);
178
+ const assetsNotCreatedId = assetsCreated.errors.map((a) => a.document._id);
179
+ successes = [...assetsCreatedId];
180
+ errors = errors.concat(...assetsNotCreatedId);
181
+ //Iterate over all created asset, and migrate each one
182
+ for (const asset of assetsCreated.successes) {
183
+ //We need to recover the linked devices to this asset,
184
+ //because we reset them when we create the asset
185
+ const assetOriginal = assets.successes.find((a) => a._id === asset._id);
186
+ // get linked devices to this asset, if any
187
+ const linkedDevices = assetOriginal._source.linkedDevices.map((d) => ({
188
+ _id: d._id,
189
+ measureNames: d.measureNames,
198
190
  }));
199
- // recovery function to reattach devices to the old tenant
200
- recovery.addRecovery(async () => {
201
- await Promise.all(devices.hits.map((device) => {
202
- return (0, shared_1.ask)("ask:device-manager:device:detach-engine", { deviceId: device._id, user });
203
- }));
204
- await Promise.all(devices.hits.map((device) => {
205
- return (0, shared_1.ask)("ask:device-manager:device:attach-engine", { deviceId: device._id, engineId, user });
206
- }));
207
- });
208
- // Create the assets in the new tenant
209
- await this.sdk.document.mCreate(newEngineId, plugin_1.InternalCollection.ASSETS, assetsToMigrate);
210
- recovery.addRecovery(async () => {
211
- await this.sdk.document.mDelete(newEngineId, plugin_1.InternalCollection.ASSETS, assetsList);
212
- });
213
- // Delete the assets in the old tenant
214
- await this.sdk.document.mDelete(engineId, plugin_1.InternalCollection.ASSETS, assetsList);
215
- recovery.addRecovery(async () => {
216
- await this.sdk.document.mCreate(engineId, plugin_1.InternalCollection.ASSETS, assetsToMigrate);
217
- });
218
- // Link the devices to the new assets
219
- const promises = [];
220
- for (const asset of assetLinkedDevices) {
221
- const assetId = asset.assetId;
222
- for (const device of asset.linkedDevices) {
223
- const deviceId = device._id;
224
- const measureNames = device.measureNames;
225
- promises.push((0, shared_1.ask)("ask:device-manager:device:link-asset", {
226
- assetId,
227
- deviceId,
228
- engineId: newEngineId,
229
- measureNames: measureNames,
230
- user,
231
- }));
232
- }
191
+ // ... and iterate over this list
192
+ for (const device of linkedDevices) {
193
+ // detach linked devices from current tenant (it also unkinks asset)
194
+ await (0, shared_1.ask)("ask:device-manager:device:detach-engine", { deviceId: device._id, user });
195
+ // ... and attach to new tenant
196
+ await (0, shared_1.ask)("ask:device-manager:device:attach-engine", { deviceId: device._id, engineId: newEngineId, user });
197
+ // ... and link this device to the asset in the new tenant
198
+ await (0, shared_1.ask)("ask:device-manager:device:link-asset", {
199
+ assetId: asset._id,
200
+ deviceId: device._id,
201
+ engineId: newEngineId,
202
+ measureNames: device.measureNames,
203
+ user,
204
+ });
233
205
  }
234
- await Promise.all(promises);
235
- recovery.addRecovery(async () => {
236
- const promiseRecoveries = [];
237
- for (const asset of assetLinkedDevices) {
238
- for (const device of asset.linkedDevices) {
239
- const deviceId = device._id;
240
- promiseRecoveries.push((0, shared_1.ask)("ask:device-manager:device:unlink-asset", {
241
- deviceId,
242
- user,
243
- }));
244
- }
245
- }
246
- await Promise.all(promiseRecoveries);
247
- });
248
- // clear the groups
249
- await this.sdk.document.mUpdate(newEngineId, plugin_1.InternalCollection.ASSETS, assetsList.map((assetId) => ({
250
- _id: assetId,
251
- body: {
252
- groups: [],
253
- },
254
- })));
255
- }
256
- catch (error) {
257
- await recovery.rollback();
258
- throw new kuzzle_1.BadRequestError(`An error occured while migrating assets: ${error}`);
259
206
  }
207
+ // Finally here, we can delete the newly create assets in the source engine !
208
+ await this.sdk.document.mDelete(engineId, plugin_1.InternalCollection.ASSETS, assetsCreatedId);
209
+ //Refresh ES indexes and collections
210
+ const collectionsToRefresh = [
211
+ {
212
+ collection: plugin_1.InternalCollection.ASSETS,
213
+ index: engineId,
214
+ },
215
+ {
216
+ collection: plugin_1.InternalCollection.DEVICES,
217
+ index: engineId,
218
+ },
219
+ {
220
+ collection: plugin_1.InternalCollection.ASSETS,
221
+ index: newEngineId,
222
+ },
223
+ {
224
+ collection: plugin_1.InternalCollection.DEVICES,
225
+ index: newEngineId,
226
+ },
227
+ {
228
+ collection: plugin_1.InternalCollection.DEVICES,
229
+ index: this.config.adminIndex,
230
+ },
231
+ ].map(({ index, collection }) => {
232
+ return this.sdk.collection.refresh(index, collection);
233
+ });
234
+ await Promise.all(collectionsToRefresh);
260
235
  });
236
+ return { errors, successes };
261
237
  }
262
238
  /**
263
239
  * Replace an asset metadata
@@ -1 +1 @@
1
- {"version":3,"file":"AssetService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AssetService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetService.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ControllerDefinition, KuzzleRequest } from "kuzzle";
2
2
  import { DeviceManagerPlugin } from "../plugin";
3
3
  import { AssetService } from "./AssetService";
4
- import { ApiAssetCreateResult, ApiAssetDeleteResult, ApiAssetGetMeasuresResult, ApiAssetGetResult, ApiAssetSearchResult, ApiAssetUpdateResult } from "./types/AssetApi";
4
+ import { ApiAssetCreateResult, ApiAssetDeleteResult, ApiAssetGetMeasuresResult, ApiAssetGetResult, ApiAssetSearchResult, ApiAssetUpdateResult, ApiAssetMigrateTenantResult } from "./types/AssetApi";
5
5
  export declare class AssetsController {
6
6
  private plugin;
7
7
  private assetService;
@@ -17,5 +17,5 @@ export declare class AssetsController {
17
17
  getMeasures(request: KuzzleRequest): Promise<ApiAssetGetMeasuresResult>;
18
18
  exportMeasures(request: KuzzleRequest): Promise<any>;
19
19
  export(request: KuzzleRequest): Promise<any>;
20
- migrateTenant(request: KuzzleRequest): Promise<void>;
20
+ migrateTenant(request: KuzzleRequest): Promise<ApiAssetMigrateTenantResult>;
21
21
  }
@@ -95,17 +95,14 @@ class AssetsController {
95
95
  async get(request) {
96
96
  const assetId = request.getId();
97
97
  const engineId = request.getString("engineId");
98
- const asset = await this.assetService.get(engineId, assetId);
98
+ const asset = await this.assetService.get(engineId, assetId, request);
99
99
  return AssetSerializer_1.AssetSerializer.serialize(asset);
100
100
  }
101
101
  async update(request) {
102
102
  const assetId = request.getId();
103
103
  const engineId = request.getString("engineId");
104
104
  const metadata = request.getBodyObject("metadata");
105
- const refresh = request.getRefresh();
106
- const updatedAsset = await this.assetService.update(request.getUser(), engineId, assetId, metadata, {
107
- refresh,
108
- });
105
+ const updatedAsset = await this.assetService.update(engineId, assetId, metadata, request);
109
106
  return AssetSerializer_1.AssetSerializer.serialize(updatedAsset);
110
107
  }
111
108
  async create(request) {
@@ -113,33 +110,16 @@ class AssetsController {
113
110
  const model = request.getBodyString("model");
114
111
  const reference = request.getBodyString("reference");
115
112
  const metadata = request.getBodyObject("metadata", {});
116
- const refresh = request.getRefresh();
117
- const asset = await this.assetService.create(request.getUser(), engineId, model, reference, metadata, {
118
- refresh,
119
- });
113
+ const asset = await this.assetService.create(engineId, model, reference, metadata, request);
120
114
  return AssetSerializer_1.AssetSerializer.serialize(asset);
121
115
  }
122
116
  async delete(request) {
123
117
  const engineId = request.getString("engineId");
124
118
  const assetId = request.getId();
125
- const refresh = request.getRefresh();
126
- const strict = request.getBoolean("strict");
127
- await this.assetService.delete(request.getUser(), engineId, assetId, {
128
- refresh,
129
- strict,
130
- });
119
+ await this.assetService.delete(engineId, assetId, request);
131
120
  }
132
121
  async search(request) {
133
- const engineId = request.getString("engineId");
134
- const { searchBody, from, size, scrollTTL: scroll, } = request.getSearchParams();
135
- const lang = request.getLangParam();
136
- const result = await this.assetService.search(engineId, searchBody, {
137
- from,
138
- lang,
139
- scroll,
140
- size,
141
- });
142
- return result;
122
+ return await this.assetService.search(request.getString("engineId"), request.getSearchParams(), request);
143
123
  }
144
124
  async getMeasures(request) {
145
125
  const id = request.getId();
@@ -257,7 +237,8 @@ class AssetsController {
257
237
  const assetsList = request.getBodyArray("assetsList");
258
238
  const engineId = request.getString("engineId");
259
239
  const newEngineId = request.getBodyString("newEngineId");
260
- await this.assetService.migrateTenant(request.getUser(), assetsList, engineId, newEngineId);
240
+ const { errors, successes } = await this.assetService.migrateTenant(request.getUser(), assetsList, engineId, newEngineId);
241
+ return { errors, successes };
261
242
  }
262
243
  }
263
244
  exports.AssetsController = AssetsController;