UNPKG

@openhps/core

Version:

Open Hybrid Positioning System - Core component

61 lines 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NodeData = exports.NodeDataService = void 0; const tslib_1 = require("tslib"); const decorators_1 = require("../data/decorators"); const DataService_1 = require("./DataService"); const uuid_1 = require("uuid"); class NodeDataService extends DataService_1.DataService { /** * Find node data * @param {string} nodeUID Node identifier * @param {DataObject} dataObject Data object to get node data for * @returns {Promise<any>} Promise of node data for data object */ findData(nodeUID, dataObject) { return new Promise((resolve) => { this.findByUID(this.getUID(nodeUID, typeof dataObject === 'string' ? dataObject : dataObject.uid)) .then((nodeData) => { resolve(nodeData.data); }) .catch(() => { resolve(undefined); }); }); } insertData(nodeUID, dataObject, data) { const uid = this.getUID(nodeUID, typeof dataObject === 'string' ? dataObject : dataObject.uid); return this.insert(uid, new NodeData(uid, data)); } getUID(nodeUID, dataObjectUID) { return (0, uuid_1.v5)(dataObjectUID + nodeUID, '97b9cc7e-19ca-4f20-8190-161d7b39e93a'); } } exports.NodeDataService = NodeDataService; let NodeData = class NodeData { constructor(uid, data = {}) { this.uid = uid; this.data = data; } }; exports.NodeData = NodeData; tslib_1.__decorate([ (0, decorators_1.SerializableMember)(), tslib_1.__metadata("design:type", String) ], NodeData.prototype, "uid", void 0); tslib_1.__decorate([ (0, decorators_1.SerializableMember)({ serializer: (data) => { return data; }, deserializer: (json) => { return json; }, }), tslib_1.__metadata("design:type", Object) ], NodeData.prototype, "data", void 0); exports.NodeData = NodeData = tslib_1.__decorate([ (0, decorators_1.SerializableObject)(), tslib_1.__metadata("design:paramtypes", [String, Object]) ], NodeData); //# sourceMappingURL=NodeDataService.js.map