kuzzle-device-manager 2.4.0-beta.2 → 2.4.0-beta.20
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/dist/lib/modules/asset/AssetHistoryService.d.ts +2 -4
- package/dist/lib/modules/asset/AssetHistoryService.js +4 -7
- package/dist/lib/modules/asset/AssetHistoryService.js.map +1 -1
- package/dist/lib/modules/asset/AssetService.d.ts +25 -26
- package/dist/lib/modules/asset/AssetService.js +235 -42
- package/dist/lib/modules/asset/AssetService.js.map +1 -1
- package/dist/lib/modules/asset/AssetsController.d.ts +4 -1
- package/dist/lib/modules/asset/AssetsController.js +51 -25
- package/dist/lib/modules/asset/AssetsController.js.map +1 -1
- package/dist/lib/modules/asset/AssetsGroupsController.js +1 -1
- package/dist/lib/modules/asset/AssetsGroupsController.js.map +1 -1
- package/dist/lib/modules/asset/model/AssetSerializer.js +1 -0
- package/dist/lib/modules/asset/model/AssetSerializer.js.map +1 -1
- package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js +3 -0
- package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js.map +1 -1
- package/dist/lib/modules/asset/types/AssetApi.d.ts +32 -0
- package/dist/lib/modules/asset/types/AssetContent.d.ts +1 -1
- package/dist/lib/modules/decoder/DecodedPayload.js.map +1 -1
- package/dist/lib/modules/decoder/Decoder.d.ts +11 -0
- package/dist/lib/modules/decoder/Decoder.js +1 -0
- package/dist/lib/modules/decoder/Decoder.js.map +1 -1
- package/dist/lib/modules/decoder/DecodersRegister.js.map +1 -1
- package/dist/lib/modules/decoder/DecodingState.js +1 -1
- package/dist/lib/modules/decoder/DecodingState.js.map +1 -1
- package/dist/lib/modules/decoder/PayloadService.d.ts +3 -6
- package/dist/lib/modules/decoder/PayloadService.js +11 -17
- package/dist/lib/modules/decoder/PayloadService.js.map +1 -1
- package/dist/lib/modules/decoder/PayloadsController.js.map +1 -1
- package/dist/lib/modules/decoder/types/DecoderContent.d.ts +1 -0
- package/dist/lib/modules/device/DeviceService.d.ts +27 -46
- package/dist/lib/modules/device/DeviceService.js +159 -73
- package/dist/lib/modules/device/DeviceService.js.map +1 -1
- package/dist/lib/modules/device/DevicesController.d.ts +2 -1
- package/dist/lib/modules/device/DevicesController.js +25 -41
- package/dist/lib/modules/device/DevicesController.js.map +1 -1
- package/dist/lib/modules/device/collections/deviceMappings.d.ts +2 -46
- package/dist/lib/modules/device/collections/deviceMappings.js.map +1 -1
- package/dist/lib/modules/device/types/DeviceApi.d.ts +11 -0
- package/dist/lib/modules/device/types/DeviceEvents.d.ts +29 -0
- package/dist/lib/modules/measure/MeasureExporter.d.ts +5 -2
- package/dist/lib/modules/measure/MeasureExporter.js +35 -14
- package/dist/lib/modules/measure/MeasureExporter.js.map +1 -1
- package/dist/lib/modules/measure/MeasureService.d.ts +2 -6
- package/dist/lib/modules/measure/MeasureService.js +6 -11
- package/dist/lib/modules/measure/MeasureService.js.map +1 -1
- package/dist/lib/modules/measure/collections/measuresMappings.d.ts +18 -0
- package/dist/lib/modules/measure/collections/measuresMappings.js +14 -0
- package/dist/lib/modules/measure/collections/measuresMappings.js.map +1 -1
- package/dist/lib/modules/measure/measures/BatteryMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/BatteryMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/HumidityMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/HumidityMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/MovementMeasure.js +10 -0
- package/dist/lib/modules/measure/measures/MovementMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/PositionMeasure.js +22 -0
- package/dist/lib/modules/measure/measures/PositionMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/TemperatureMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/TemperatureMeasure.js.map +1 -1
- package/dist/lib/modules/measure/types/MeasureContent.d.ts +4 -0
- package/dist/lib/modules/measure/types/MeasureDefinition.d.ts +28 -3
- package/dist/lib/modules/model/MappingsConflictsError.d.ts +7 -0
- package/dist/lib/modules/model/MappingsConflictsError.js +20 -0
- package/dist/lib/modules/model/MappingsConflictsError.js.map +1 -0
- package/dist/lib/modules/model/ModelSerializer.js.map +1 -1
- package/dist/lib/modules/model/ModelService.d.ts +13 -8
- package/dist/lib/modules/model/ModelService.js +162 -28
- package/dist/lib/modules/model/ModelService.js.map +1 -1
- package/dist/lib/modules/model/ModelsConflicts.d.ts +30 -0
- package/dist/lib/modules/model/ModelsConflicts.js +107 -0
- package/dist/lib/modules/model/ModelsConflicts.js.map +1 -0
- package/dist/lib/modules/model/ModelsController.d.ts +2 -1
- package/dist/lib/modules/model/ModelsController.js +27 -3
- package/dist/lib/modules/model/ModelsController.js.map +1 -1
- package/dist/lib/modules/model/ModelsRegister.d.ts +28 -3
- package/dist/lib/modules/model/ModelsRegister.js +50 -5
- package/dist/lib/modules/model/ModelsRegister.js.map +1 -1
- package/dist/lib/modules/model/collections/modelsMappings.js +24 -0
- package/dist/lib/modules/model/collections/modelsMappings.js.map +1 -1
- package/dist/lib/modules/model/types/ModelApi.d.ts +24 -3
- package/dist/lib/modules/model/types/ModelContent.d.ts +207 -2
- package/dist/lib/modules/model/types/ModelContent.js +9 -0
- package/dist/lib/modules/model/types/ModelContent.js.map +1 -1
- package/dist/lib/modules/model/types/ModelDefinition.d.ts +129 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.d.ts +141 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.js +238 -41
- package/dist/lib/modules/plugin/DeviceManagerEngine.js.map +1 -1
- package/dist/lib/modules/plugin/DeviceManagerPlugin.d.ts +113 -8
- package/dist/lib/modules/plugin/DeviceManagerPlugin.js +146 -16
- package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
- package/dist/lib/modules/plugin/exports.d.ts +1 -1
- package/dist/lib/modules/plugin/exports.js +1 -1
- package/dist/lib/modules/plugin/exports.js.map +1 -1
- package/dist/lib/modules/plugin/index.d.ts +1 -2
- package/dist/lib/modules/plugin/index.js +1 -2
- package/dist/lib/modules/plugin/index.js.map +1 -1
- package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +27 -5
- package/dist/lib/modules/plugin/types/InternalCollection.js +1 -1
- package/dist/lib/modules/plugin/types/InternalCollection.js.map +1 -1
- package/dist/lib/modules/plugin/types/Pipes.d.ts +17 -0
- package/dist/lib/modules/plugin/types/Pipes.js +3 -0
- package/dist/lib/modules/plugin/types/Pipes.js.map +1 -0
- package/dist/lib/modules/plugin/types/exports.d.ts +1 -0
- package/dist/lib/modules/plugin/types/exports.js +18 -0
- package/dist/lib/modules/plugin/types/exports.js.map +1 -0
- package/dist/lib/modules/plugin/types/index.d.ts +3 -0
- package/dist/lib/modules/plugin/types/index.js +20 -0
- package/dist/lib/modules/plugin/types/index.js.map +1 -0
- package/dist/lib/modules/shared/index.d.ts +3 -4
- package/dist/lib/modules/shared/index.js +3 -4
- package/dist/lib/modules/shared/index.js.map +1 -1
- package/dist/lib/modules/shared/services/AbstractExporter.d.ts +1 -0
- package/dist/lib/modules/shared/services/AbstractExporter.js +7 -1
- package/dist/lib/modules/shared/services/AbstractExporter.js.map +1 -1
- package/dist/lib/modules/shared/services/BaseService.d.ts +69 -0
- package/dist/lib/modules/shared/services/BaseService.js +157 -0
- package/dist/lib/modules/shared/services/BaseService.js.map +1 -0
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js +9 -3
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js.map +1 -1
- package/dist/lib/modules/shared/services/index.d.ts +1 -0
- package/dist/lib/modules/shared/services/index.js +1 -0
- package/dist/lib/modules/shared/services/index.js.map +1 -1
- package/dist/lib/modules/shared/utils/flattenObject.js.map +1 -1
- package/dist/lib/modules/shared/utils/lock.js.map +1 -1
- package/dist/lib/modules/shared/utils/objectDiff.js.map +1 -1
- package/package.json +26 -26
- package/dist/lib/modules/shared/utils/ask.d.ts +0 -8
- package/dist/lib/modules/shared/utils/ask.js +0 -12
- package/dist/lib/modules/shared/utils/ask.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
|
}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AssetHistoryService = void 0;
|
|
4
|
+
const kuzzle_plugin_commons_1 = require("kuzzle-plugin-commons");
|
|
4
5
|
const plugin_1 = require("../plugin");
|
|
5
6
|
const shared_1 = require("../shared");
|
|
6
|
-
class AssetHistoryService {
|
|
7
|
-
get sdk() {
|
|
8
|
-
return this.context.accessors.sdk;
|
|
9
|
-
}
|
|
7
|
+
class AssetHistoryService extends shared_1.BaseService {
|
|
10
8
|
constructor(plugin) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
(0, shared_1.onAsk)("ask:device-manager:asset:history:add", async ({ engineId, histories }) => this.add(engineId, histories));
|
|
9
|
+
super(plugin);
|
|
10
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:asset:history:add", async ({ engineId, histories }) => this.add(engineId, histories));
|
|
14
11
|
}
|
|
15
12
|
async add(engineId, histories) {
|
|
16
13
|
const contents = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetHistoryService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetHistoryService.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"AssetHistoryService.js","sourceRoot":"","sources":["../../../../lib/modules/asset/AssetHistoryService.ts"],"names":[],"mappings":";;;AAAA,iEAA8C;AAG9C,sCAAoE;AACpE,sCAAwC;AAQxC,MAAa,mBAAoB,SAAQ,oBAAW;IAClD,YAAY,MAA2B;QACrC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAA,6BAAK,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,CAAC;YACxD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE;oBACJ,KAAK;oBACL,KAAK;oBACL,EAAE;oBACF,SAAS;iBACV;aACF,CAAC,CAAC;QACL,CAAC;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,38 +1,37 @@
|
|
|
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 { BaseService, Metadata, SearchParams } from "../shared";
|
|
5
5
|
import { AssetHistoryService } from "./AssetHistoryService";
|
|
6
|
+
import { ApiAssetMigrateTenantResult } from "./types/AssetApi";
|
|
6
7
|
import { AssetContent } from "./types/AssetContent";
|
|
7
|
-
export declare class AssetService {
|
|
8
|
-
private context;
|
|
9
|
-
private config;
|
|
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
|
+
* Update an asset metadata
|
|
19
15
|
*/
|
|
20
|
-
update(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
16
|
+
update(engineId: string, assetId: string, metadata: Metadata, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
|
|
17
|
+
/**
|
|
18
|
+
* Replace an asset metadata
|
|
19
|
+
*/
|
|
20
|
+
replaceMetadata(engineId: string, assetId: string, metadata: Metadata, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
|
|
21
|
+
/**
|
|
22
|
+
* Update or Create an asset metadata
|
|
23
|
+
*/
|
|
24
|
+
upsert(engineId: string, model: string, reference: string, metadata: Metadata, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
|
|
25
|
+
/**
|
|
26
|
+
* Create an asset metadata
|
|
27
|
+
*/
|
|
28
|
+
create(engineId: string, model: string, reference: string, metadata: JSONObject, request: KuzzleRequest): Promise<KDocument<AssetContent>>;
|
|
29
|
+
/**
|
|
30
|
+
* Delete an asset metadata
|
|
31
|
+
*/
|
|
32
|
+
delete(engineId: string, assetId: string, request: KuzzleRequest): Promise<void>;
|
|
33
|
+
search(engineId: string, searchParams: SearchParams, request: KuzzleRequest): Promise<SearchResult<KHit<AssetContent>>>;
|
|
34
|
+
migrateTenant(user: User, assetsList: string[], engineId: string, newEngineId: string): Promise<ApiAssetMigrateTenantResult>;
|
|
36
35
|
/**
|
|
37
36
|
* Replace an asset metadata
|
|
38
37
|
*/
|
|
@@ -5,45 +5,40 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.AssetService = void 0;
|
|
7
7
|
const kuzzle_1 = require("kuzzle");
|
|
8
|
+
const kuzzle_plugin_commons_1 = require("kuzzle-plugin-commons");
|
|
8
9
|
const lodash_1 = __importDefault(require("lodash"));
|
|
9
10
|
const plugin_1 = require("../plugin");
|
|
10
11
|
const shared_1 = require("../shared");
|
|
11
12
|
const AssetSerializer_1 = require("./model/AssetSerializer");
|
|
12
|
-
class AssetService {
|
|
13
|
-
get sdk() {
|
|
14
|
-
return this.context.accessors.sdk;
|
|
15
|
-
}
|
|
16
|
-
get app() {
|
|
17
|
-
return global.app;
|
|
18
|
-
}
|
|
19
|
-
get impersonatedSdk() {
|
|
20
|
-
return (user) => {
|
|
21
|
-
if (user?._id) {
|
|
22
|
-
return this.sdk.as(user, { checkRights: false });
|
|
23
|
-
}
|
|
24
|
-
return this.sdk;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
13
|
+
class AssetService extends shared_1.BaseService {
|
|
27
14
|
constructor(plugin, assetHistoryService) {
|
|
28
|
-
|
|
29
|
-
this.config = plugin.config;
|
|
15
|
+
super(plugin);
|
|
30
16
|
this.assetHistoryService = assetHistoryService;
|
|
31
17
|
this.registerAskEvents();
|
|
32
18
|
}
|
|
33
19
|
registerAskEvents() {
|
|
34
|
-
(0,
|
|
20
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:asset:refresh-model", this.refreshModel.bind(this));
|
|
35
21
|
}
|
|
36
|
-
async get(engineId, assetId) {
|
|
37
|
-
return this.
|
|
22
|
+
async get(engineId, assetId, request) {
|
|
23
|
+
return this.getDocument(request, assetId, {
|
|
24
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
25
|
+
engineId,
|
|
26
|
+
});
|
|
38
27
|
}
|
|
39
28
|
/**
|
|
40
|
-
*
|
|
29
|
+
* Update an asset metadata
|
|
41
30
|
*/
|
|
42
|
-
async update(
|
|
31
|
+
async update(engineId, assetId, metadata, request) {
|
|
43
32
|
return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
|
|
44
|
-
const asset = await this.get(engineId, assetId);
|
|
33
|
+
const asset = await this.get(engineId, assetId, request);
|
|
45
34
|
const updatedPayload = await this.app.trigger("device-manager:asset:update:before", { asset, metadata });
|
|
46
|
-
const updatedAsset = await this.
|
|
35
|
+
const updatedAsset = await this.updateDocument(request, {
|
|
36
|
+
_id: assetId,
|
|
37
|
+
_source: { metadata: updatedPayload.metadata },
|
|
38
|
+
}, {
|
|
39
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
40
|
+
engineId,
|
|
41
|
+
}, { source: true });
|
|
47
42
|
await this.assetHistoryService.add(engineId, [
|
|
48
43
|
{
|
|
49
44
|
asset: updatedAsset._source,
|
|
@@ -64,11 +59,83 @@ class AssetService {
|
|
|
64
59
|
return updatedAsset;
|
|
65
60
|
});
|
|
66
61
|
}
|
|
67
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Replace an asset metadata
|
|
64
|
+
*/
|
|
65
|
+
async replaceMetadata(engineId, assetId, metadata, request) {
|
|
66
|
+
const asset = await this.get(engineId, assetId, request);
|
|
67
|
+
for (const key in metadata) {
|
|
68
|
+
if (key in asset._source.metadata) {
|
|
69
|
+
asset._source.metadata[key] = metadata[key];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const updatedPayload = await this.app.trigger("device-manager:asset:update:before", { asset, metadata });
|
|
73
|
+
const updatedAsset = await this.sdk.document.replace(engineId, plugin_1.InternalCollection.ASSETS, assetId, updatedPayload.asset._source);
|
|
74
|
+
await this.assetHistoryService.add(engineId, [
|
|
75
|
+
{
|
|
76
|
+
asset: updatedAsset._source,
|
|
77
|
+
event: {
|
|
78
|
+
metadata: {
|
|
79
|
+
names: Object.keys((0, shared_1.flattenObject)(updatedPayload.metadata)),
|
|
80
|
+
},
|
|
81
|
+
name: "metadata",
|
|
82
|
+
},
|
|
83
|
+
id: updatedAsset._id,
|
|
84
|
+
timestamp: Date.now(),
|
|
85
|
+
},
|
|
86
|
+
]);
|
|
87
|
+
await this.app.trigger("device-manager:asset:update:after", {
|
|
88
|
+
asset: updatedAsset,
|
|
89
|
+
metadata: updatedPayload.metadata,
|
|
90
|
+
});
|
|
91
|
+
return updatedAsset;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Update or Create an asset metadata
|
|
95
|
+
*/
|
|
96
|
+
async upsert(engineId, model, reference, metadata, request) {
|
|
97
|
+
const assetId = `${model}-${reference}`;
|
|
98
|
+
return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
|
|
99
|
+
const asset = await this.get(engineId, assetId, request).catch(() => null);
|
|
100
|
+
if (!asset) {
|
|
101
|
+
return this.create(engineId, model, reference, metadata, request);
|
|
102
|
+
}
|
|
103
|
+
const updatedPayload = await this.app.trigger("device-manager:asset:update:before", { asset, metadata });
|
|
104
|
+
const updatedAsset = await this.updateDocument(request, {
|
|
105
|
+
_id: assetId,
|
|
106
|
+
_source: { metadata: updatedPayload.metadata },
|
|
107
|
+
}, {
|
|
108
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
109
|
+
engineId,
|
|
110
|
+
}, { source: true });
|
|
111
|
+
await this.assetHistoryService.add(engineId, [
|
|
112
|
+
{
|
|
113
|
+
asset: updatedAsset._source,
|
|
114
|
+
event: {
|
|
115
|
+
metadata: {
|
|
116
|
+
names: Object.keys((0, shared_1.flattenObject)(updatedPayload.metadata)),
|
|
117
|
+
},
|
|
118
|
+
name: "metadata",
|
|
119
|
+
},
|
|
120
|
+
id: updatedAsset._id,
|
|
121
|
+
timestamp: Date.now(),
|
|
122
|
+
},
|
|
123
|
+
]);
|
|
124
|
+
await this.app.trigger("device-manager:asset:update:after", {
|
|
125
|
+
asset: updatedAsset,
|
|
126
|
+
metadata: updatedPayload.metadata,
|
|
127
|
+
});
|
|
128
|
+
return updatedAsset;
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Create an asset metadata
|
|
133
|
+
*/
|
|
134
|
+
async create(engineId, model, reference, metadata, request) {
|
|
68
135
|
const assetId = AssetSerializer_1.AssetSerializer.id(model, reference);
|
|
69
136
|
return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
|
|
70
137
|
const engine = await this.getEngine(engineId);
|
|
71
|
-
const assetModel = await (0,
|
|
138
|
+
const assetModel = await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:model:asset:get", { engineGroup: engine.group, model });
|
|
72
139
|
const assetMetadata = {};
|
|
73
140
|
for (const metadataName of Object.keys(assetModel.asset.metadataMappings)) {
|
|
74
141
|
assetMetadata[metadataName] = null;
|
|
@@ -80,13 +147,21 @@ class AssetService {
|
|
|
80
147
|
for (const { name } of assetModel.asset.measures) {
|
|
81
148
|
measures[name] = null;
|
|
82
149
|
}
|
|
83
|
-
const asset = await this.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
150
|
+
const asset = await this.createDocument(request, {
|
|
151
|
+
_id: assetId,
|
|
152
|
+
_source: {
|
|
153
|
+
groups: [],
|
|
154
|
+
lastMeasuredAt: null,
|
|
155
|
+
linkedDevices: [],
|
|
156
|
+
measures,
|
|
157
|
+
metadata: { ...assetMetadata, ...metadata },
|
|
158
|
+
model,
|
|
159
|
+
reference,
|
|
160
|
+
},
|
|
161
|
+
}, {
|
|
162
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
163
|
+
engineId,
|
|
164
|
+
});
|
|
90
165
|
await this.assetHistoryService.add(engineId, [
|
|
91
166
|
{
|
|
92
167
|
asset: asset._source,
|
|
@@ -103,23 +178,141 @@ class AssetService {
|
|
|
103
178
|
return asset;
|
|
104
179
|
});
|
|
105
180
|
}
|
|
106
|
-
|
|
181
|
+
/**
|
|
182
|
+
* Delete an asset metadata
|
|
183
|
+
*/
|
|
184
|
+
async delete(engineId, assetId, request) {
|
|
185
|
+
const user = request.getUser();
|
|
186
|
+
const strict = request.getBoolean("strict");
|
|
107
187
|
return (0, shared_1.lock)(`asset:${engineId}:${assetId}`, async () => {
|
|
108
|
-
const asset = await this.get(engineId, assetId);
|
|
188
|
+
const asset = await this.get(engineId, assetId, request);
|
|
109
189
|
if (strict && asset._source.linkedDevices.length !== 0) {
|
|
110
190
|
throw new kuzzle_1.BadRequestError(`Asset "${assetId}" is still linked to devices.`);
|
|
111
191
|
}
|
|
112
192
|
for (const { _id: deviceId } of asset._source.linkedDevices) {
|
|
113
|
-
await (0,
|
|
193
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:device:unlink-asset", { deviceId, user });
|
|
114
194
|
}
|
|
115
|
-
await this.
|
|
116
|
-
|
|
195
|
+
await this.deleteDocument(request, assetId, {
|
|
196
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
197
|
+
engineId,
|
|
117
198
|
});
|
|
118
199
|
});
|
|
119
200
|
}
|
|
120
|
-
async search(engineId,
|
|
121
|
-
|
|
122
|
-
|
|
201
|
+
async search(engineId, searchParams, request) {
|
|
202
|
+
return this.searchDocument(request, searchParams, {
|
|
203
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
204
|
+
engineId,
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
async migrateTenant(user, assetsList, engineId, newEngineId) {
|
|
208
|
+
let errors = [];
|
|
209
|
+
let successes = [];
|
|
210
|
+
//Sanity check
|
|
211
|
+
if (assetsList.length === 0) {
|
|
212
|
+
throw new kuzzle_1.BadRequestError("No assets to migrate");
|
|
213
|
+
}
|
|
214
|
+
await (0, shared_1.lock)(`engine:${engineId}:${newEngineId}`, async () => {
|
|
215
|
+
if (!user.profileIds.includes("admin")) {
|
|
216
|
+
throw new kuzzle_1.BadRequestError(`User ${user._id} is not authorized to migrate assets`);
|
|
217
|
+
}
|
|
218
|
+
// check if tenant destination is in the same group
|
|
219
|
+
const engine = await this.getEngine(engineId);
|
|
220
|
+
const newEngine = await this.getEngine(newEngineId);
|
|
221
|
+
if (engine.group !== newEngine.group) {
|
|
222
|
+
throw new kuzzle_1.BadRequestError(`Engine ${newEngineId} is not in the same group as ${engineId}`);
|
|
223
|
+
}
|
|
224
|
+
//First of all, as mCreate seems to be buggy, ensure some assets don't
|
|
225
|
+
//already exists in the destination tenant
|
|
226
|
+
const assetsCheck = await this.sdk.document.mGet(newEngineId, plugin_1.InternalCollection.ASSETS, assetsList);
|
|
227
|
+
const assetsCheckedIdExisting = assetsCheck.successes.map((a) => a._id);
|
|
228
|
+
errors = [...assetsCheckedIdExisting];
|
|
229
|
+
//Get all assets to migrate
|
|
230
|
+
const assetsCheckedList = assetsList.filter((id) => !assetsCheckedIdExisting.includes(id));
|
|
231
|
+
if (assetsCheckedList.length === 0) {
|
|
232
|
+
throw new kuzzle_1.BadRequestError("All assets to migrate already exists in destination tenant.");
|
|
233
|
+
}
|
|
234
|
+
const assets = await this.sdk.document.mGet(engineId, plugin_1.InternalCollection.ASSETS, assetsCheckedList);
|
|
235
|
+
errors = errors.concat(...assets.errors);
|
|
236
|
+
if (assets.successes.length === 0) {
|
|
237
|
+
this.app.log.error("No assets found to migrate");
|
|
238
|
+
return { errors, successes };
|
|
239
|
+
}
|
|
240
|
+
//Get all the asset content, in order to create thm by batch
|
|
241
|
+
const assetsContent = assets.successes.map((asset) => ({
|
|
242
|
+
_id: asset._id,
|
|
243
|
+
body: asset._source,
|
|
244
|
+
}));
|
|
245
|
+
//We want to create the new asset with linked devices and groups empty
|
|
246
|
+
const assetsContentCopy = lodash_1.default.cloneDeep(assetsContent);
|
|
247
|
+
for (const asset of assetsContentCopy) {
|
|
248
|
+
asset.body.linkedDevices = [];
|
|
249
|
+
asset.body.groups = [];
|
|
250
|
+
}
|
|
251
|
+
//Even if they exist in the destination tenant, try creating them all
|
|
252
|
+
//using batch
|
|
253
|
+
const assetsCreated = await this.sdk.document.mCreate(newEngineId, plugin_1.InternalCollection.ASSETS, assetsContentCopy);
|
|
254
|
+
//We consider here we will return as success what we have been able
|
|
255
|
+
//to create, and related errors
|
|
256
|
+
const assetsCreatedId = assetsCreated.successes.map((a) => a._id);
|
|
257
|
+
const assetsNotCreatedId = assetsCreated.errors.map((a) => a.document._id);
|
|
258
|
+
successes = [...assetsCreatedId];
|
|
259
|
+
errors = errors.concat(...assetsNotCreatedId);
|
|
260
|
+
//Iterate over all created asset, and migrate each one
|
|
261
|
+
for (const asset of assetsCreated.successes) {
|
|
262
|
+
//We need to recover the linked devices to this asset,
|
|
263
|
+
//because we reset them when we create the asset
|
|
264
|
+
const assetOriginal = assets.successes.find((a) => a._id === asset._id);
|
|
265
|
+
// get linked devices to this asset, if any
|
|
266
|
+
const linkedDevices = assetOriginal._source.linkedDevices.map((d) => ({
|
|
267
|
+
_id: d._id,
|
|
268
|
+
measureNames: d.measureNames,
|
|
269
|
+
}));
|
|
270
|
+
// ... and iterate over this list
|
|
271
|
+
for (const device of linkedDevices) {
|
|
272
|
+
// detach linked devices from current tenant (it also unkinks asset)
|
|
273
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:device:detach-engine", { deviceId: device._id, user });
|
|
274
|
+
// ... and attach to new tenant
|
|
275
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:device:attach-engine", { deviceId: device._id, engineId: newEngineId, user });
|
|
276
|
+
// ... and link this device to the asset in the new tenant
|
|
277
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:device:link-asset", {
|
|
278
|
+
assetId: asset._id,
|
|
279
|
+
deviceId: device._id,
|
|
280
|
+
engineId: newEngineId,
|
|
281
|
+
measureNames: device.measureNames,
|
|
282
|
+
user,
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
// Finally here, we can delete the newly create assets in the source engine !
|
|
287
|
+
await this.sdk.document.mDelete(engineId, plugin_1.InternalCollection.ASSETS, assetsCreatedId);
|
|
288
|
+
//Refresh ES indexes and collections
|
|
289
|
+
const collectionsToRefresh = [
|
|
290
|
+
{
|
|
291
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
292
|
+
index: engineId,
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
296
|
+
index: engineId,
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
300
|
+
index: newEngineId,
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
304
|
+
index: newEngineId,
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
308
|
+
index: this.config.adminIndex,
|
|
309
|
+
},
|
|
310
|
+
].map(({ index, collection }) => {
|
|
311
|
+
return this.sdk.collection.refresh(index, collection);
|
|
312
|
+
});
|
|
313
|
+
await Promise.all(collectionsToRefresh);
|
|
314
|
+
});
|
|
315
|
+
return { errors, successes };
|
|
123
316
|
}
|
|
124
317
|
/**
|
|
125
318
|
* Replace an asset metadata
|
|
@@ -145,7 +338,7 @@ class AssetService {
|
|
|
145
338
|
return engine._source.engine;
|
|
146
339
|
}
|
|
147
340
|
async refreshModel({ assetModel, }) {
|
|
148
|
-
const engines = await (0,
|
|
341
|
+
const engines = await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:engine:list", {
|
|
149
342
|
group: assetModel.engineGroup,
|
|
150
343
|
});
|
|
151
344
|
const targets = engines.map((engine) => ({
|
|
@@ -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, ApiAssetUpsertResult, ApiAssetDeleteResult, ApiAssetGetMeasuresResult, ApiAssetGetResult, ApiAssetSearchResult, ApiAssetUpdateResult, ApiAssetMigrateTenantResult, ApiAssetMetadataReplaceResult } from "./types/AssetApi";
|
|
5
5
|
export declare class AssetsController {
|
|
6
6
|
private plugin;
|
|
7
7
|
private assetService;
|
|
@@ -10,11 +10,14 @@ export declare class AssetsController {
|
|
|
10
10
|
private measureExporter;
|
|
11
11
|
constructor(plugin: DeviceManagerPlugin, assetService: AssetService);
|
|
12
12
|
get(request: KuzzleRequest): Promise<ApiAssetGetResult>;
|
|
13
|
+
upsert(request: KuzzleRequest): Promise<ApiAssetUpsertResult>;
|
|
13
14
|
update(request: KuzzleRequest): Promise<ApiAssetUpdateResult>;
|
|
15
|
+
replaceMetadata(request: KuzzleRequest): Promise<ApiAssetMetadataReplaceResult>;
|
|
14
16
|
create(request: KuzzleRequest): Promise<ApiAssetCreateResult>;
|
|
15
17
|
delete(request: KuzzleRequest): Promise<ApiAssetDeleteResult>;
|
|
16
18
|
search(request: KuzzleRequest): Promise<ApiAssetSearchResult>;
|
|
17
19
|
getMeasures(request: KuzzleRequest): Promise<ApiAssetGetMeasuresResult>;
|
|
18
20
|
exportMeasures(request: KuzzleRequest): Promise<any>;
|
|
19
21
|
export(request: KuzzleRequest): Promise<any>;
|
|
22
|
+
migrateTenant(request: KuzzleRequest): Promise<ApiAssetMigrateTenantResult>;
|
|
20
23
|
}
|
|
@@ -17,6 +17,12 @@ class AssetsController {
|
|
|
17
17
|
handler: this.create.bind(this),
|
|
18
18
|
http: [{ path: "device-manager/:engineId/assets", verb: "post" }],
|
|
19
19
|
},
|
|
20
|
+
upsert: {
|
|
21
|
+
handler: this.upsert.bind(this),
|
|
22
|
+
http: [
|
|
23
|
+
{ path: "device-manager/:engineId/assets/:_id", verb: "post" },
|
|
24
|
+
],
|
|
25
|
+
},
|
|
20
26
|
delete: {
|
|
21
27
|
handler: this.delete.bind(this),
|
|
22
28
|
http: [
|
|
@@ -38,6 +44,15 @@ class AssetsController {
|
|
|
38
44
|
handler: this.update.bind(this),
|
|
39
45
|
http: [{ path: "device-manager/:engineId/assets/:_id", verb: "put" }],
|
|
40
46
|
},
|
|
47
|
+
replaceMetadata: {
|
|
48
|
+
handler: this.replaceMetadata.bind(this),
|
|
49
|
+
http: [
|
|
50
|
+
{
|
|
51
|
+
path: "device-manager/:engineId/assets/:_id/metadata",
|
|
52
|
+
verb: "patch",
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
},
|
|
41
56
|
getMeasures: {
|
|
42
57
|
handler: this.getMeasures.bind(this),
|
|
43
58
|
http: [
|
|
@@ -77,6 +92,15 @@ class AssetsController {
|
|
|
77
92
|
},
|
|
78
93
|
],
|
|
79
94
|
},
|
|
95
|
+
migrateTenant: {
|
|
96
|
+
handler: this.migrateTenant.bind(this),
|
|
97
|
+
http: [
|
|
98
|
+
{
|
|
99
|
+
path: "device-manager/:engineId/assets/_migrateTenant",
|
|
100
|
+
verb: "post",
|
|
101
|
+
},
|
|
102
|
+
],
|
|
103
|
+
},
|
|
80
104
|
},
|
|
81
105
|
};
|
|
82
106
|
/* eslint-enable sort-keys */
|
|
@@ -86,17 +110,29 @@ class AssetsController {
|
|
|
86
110
|
async get(request) {
|
|
87
111
|
const assetId = request.getId();
|
|
88
112
|
const engineId = request.getString("engineId");
|
|
89
|
-
const asset = await this.assetService.get(engineId, assetId);
|
|
113
|
+
const asset = await this.assetService.get(engineId, assetId, request);
|
|
90
114
|
return AssetSerializer_1.AssetSerializer.serialize(asset);
|
|
91
115
|
}
|
|
116
|
+
async upsert(request) {
|
|
117
|
+
const engineId = request.getString("engineId");
|
|
118
|
+
const model = request.getBodyString("model");
|
|
119
|
+
const reference = request.getBodyString("reference");
|
|
120
|
+
const metadata = request.getBodyObject("metadata");
|
|
121
|
+
const upsertAsset = await this.assetService.upsert(engineId, model, reference, metadata, request);
|
|
122
|
+
return AssetSerializer_1.AssetSerializer.serialize(upsertAsset);
|
|
123
|
+
}
|
|
92
124
|
async update(request) {
|
|
93
125
|
const assetId = request.getId();
|
|
94
126
|
const engineId = request.getString("engineId");
|
|
95
127
|
const metadata = request.getBodyObject("metadata");
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
128
|
+
const updatedAsset = await this.assetService.update(engineId, assetId, metadata, request);
|
|
129
|
+
return AssetSerializer_1.AssetSerializer.serialize(updatedAsset);
|
|
130
|
+
}
|
|
131
|
+
async replaceMetadata(request) {
|
|
132
|
+
const assetId = request.getId();
|
|
133
|
+
const engineId = request.getString("engineId");
|
|
134
|
+
const metadata = request.getBodyObject("metadata");
|
|
135
|
+
const updatedAsset = await this.assetService.replaceMetadata(engineId, assetId, metadata, request);
|
|
100
136
|
return AssetSerializer_1.AssetSerializer.serialize(updatedAsset);
|
|
101
137
|
}
|
|
102
138
|
async create(request) {
|
|
@@ -104,33 +140,16 @@ class AssetsController {
|
|
|
104
140
|
const model = request.getBodyString("model");
|
|
105
141
|
const reference = request.getBodyString("reference");
|
|
106
142
|
const metadata = request.getBodyObject("metadata", {});
|
|
107
|
-
const
|
|
108
|
-
const asset = await this.assetService.create(request.getUser(), engineId, model, reference, metadata, {
|
|
109
|
-
refresh,
|
|
110
|
-
});
|
|
143
|
+
const asset = await this.assetService.create(engineId, model, reference, metadata, request);
|
|
111
144
|
return AssetSerializer_1.AssetSerializer.serialize(asset);
|
|
112
145
|
}
|
|
113
146
|
async delete(request) {
|
|
114
147
|
const engineId = request.getString("engineId");
|
|
115
148
|
const assetId = request.getId();
|
|
116
|
-
|
|
117
|
-
const strict = request.getBoolean("strict");
|
|
118
|
-
await this.assetService.delete(request.getUser(), engineId, assetId, {
|
|
119
|
-
refresh,
|
|
120
|
-
strict,
|
|
121
|
-
});
|
|
149
|
+
await this.assetService.delete(engineId, assetId, request);
|
|
122
150
|
}
|
|
123
151
|
async search(request) {
|
|
124
|
-
|
|
125
|
-
const { searchBody, from, size, scrollTTL: scroll, } = request.getSearchParams();
|
|
126
|
-
const lang = request.getLangParam();
|
|
127
|
-
const result = await this.assetService.search(engineId, searchBody, {
|
|
128
|
-
from,
|
|
129
|
-
lang,
|
|
130
|
-
scroll,
|
|
131
|
-
size,
|
|
132
|
-
});
|
|
133
|
-
return result;
|
|
152
|
+
return this.assetService.search(request.getString("engineId"), request.getSearchParams(), request);
|
|
134
153
|
}
|
|
135
154
|
async getMeasures(request) {
|
|
136
155
|
const id = request.getId();
|
|
@@ -244,6 +263,13 @@ class AssetsController {
|
|
|
244
263
|
});
|
|
245
264
|
return { link };
|
|
246
265
|
}
|
|
266
|
+
async migrateTenant(request) {
|
|
267
|
+
const assetsList = request.getBodyArray("assetsList");
|
|
268
|
+
const engineId = request.getString("engineId");
|
|
269
|
+
const newEngineId = request.getBodyString("newEngineId");
|
|
270
|
+
const { errors, successes } = await this.assetService.migrateTenant(request.getUser(), assetsList, engineId, newEngineId);
|
|
271
|
+
return { errors, successes };
|
|
272
|
+
}
|
|
247
273
|
}
|
|
248
274
|
exports.AssetsController = AssetsController;
|
|
249
275
|
//# sourceMappingURL=AssetsController.js.map
|