@golemio/energetics 1.0.13 → 1.0.14-dev.741822709

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 (142) hide show
  1. package/dist/integration-engine/helpers/index.d.ts +0 -1
  2. package/dist/integration-engine/helpers/index.js +0 -1
  3. package/dist/integration-engine/helpers/index.js.map +1 -1
  4. package/dist/integration-engine/index.d.ts +3 -2
  5. package/dist/integration-engine/index.js +4 -2
  6. package/dist/integration-engine/index.js.map +1 -1
  7. package/dist/integration-engine/queueDefinitions.d.ts +3 -0
  8. package/dist/integration-engine/queueDefinitions.js +4 -11
  9. package/dist/integration-engine/queueDefinitions.js.map +1 -1
  10. package/dist/integration-engine/transformations/index.d.ts +0 -3
  11. package/dist/integration-engine/transformations/index.js +0 -3
  12. package/dist/integration-engine/transformations/index.js.map +1 -1
  13. package/dist/integration-engine/workers/index.d.ts +0 -1
  14. package/dist/integration-engine/workers/index.js +0 -1
  15. package/dist/integration-engine/workers/index.js.map +1 -1
  16. package/dist/integration-engine/workers/oict-energetika/OictEnergetikaWorker.d.ts +5 -0
  17. package/dist/integration-engine/workers/oict-energetika/OictEnergetikaWorker.js +21 -0
  18. package/dist/integration-engine/workers/oict-energetika/OictEnergetikaWorker.js.map +1 -0
  19. package/dist/integration-engine/workers/oict-energetika/data-access/BuildingsRepository.d.ts +4 -0
  20. package/dist/integration-engine/workers/oict-energetika/data-access/BuildingsRepository.js +19 -0
  21. package/dist/integration-engine/workers/oict-energetika/data-access/BuildingsRepository.js.map +1 -0
  22. package/dist/integration-engine/workers/oict-energetika/data-access/ConsumptionRepository.d.ts +6 -0
  23. package/dist/integration-engine/workers/oict-energetika/data-access/ConsumptionRepository.js +37 -0
  24. package/dist/integration-engine/workers/oict-energetika/data-access/ConsumptionRepository.js.map +1 -0
  25. package/dist/integration-engine/workers/oict-energetika/data-access/DevicesRepository.d.ts +4 -0
  26. package/dist/integration-engine/workers/oict-energetika/data-access/DevicesRepository.js +19 -0
  27. package/dist/integration-engine/workers/oict-energetika/data-access/DevicesRepository.js.map +1 -0
  28. package/dist/integration-engine/workers/oict-energetika/datasources/OictDataSourceFactory.d.ts +10 -0
  29. package/dist/integration-engine/workers/oict-energetika/datasources/OictDataSourceFactory.js +23 -0
  30. package/dist/integration-engine/workers/oict-energetika/datasources/OictDataSourceFactory.js.map +1 -0
  31. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/OictApiHelper.d.ts +12 -0
  32. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/OictApiHelper.js +48 -0
  33. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/OictApiHelper.js.map +1 -0
  34. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/index.d.ts +1 -0
  35. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/index.js +18 -0
  36. package/dist/integration-engine/workers/oict-energetika/datasources/helpers/index.js.map +1 -0
  37. package/dist/integration-engine/workers/oict-energetika/interfaces/IFetchDataInput.d.ts +3 -0
  38. package/dist/integration-engine/workers/oict-energetika/interfaces/IFetchDataInput.js +3 -0
  39. package/dist/integration-engine/workers/oict-energetika/interfaces/IFetchDataInput.js.map +1 -0
  40. package/dist/integration-engine/workers/oict-energetika/schema/FetchDataSchema.d.ts +4 -0
  41. package/dist/integration-engine/workers/oict-energetika/schema/FetchDataSchema.js +22 -0
  42. package/dist/integration-engine/workers/oict-energetika/schema/FetchDataSchema.js.map +1 -0
  43. package/dist/integration-engine/workers/oict-energetika/tasks/FetchBuildingsTask.d.ts +9 -0
  44. package/dist/integration-engine/workers/oict-energetika/tasks/FetchBuildingsTask.js +44 -0
  45. package/dist/integration-engine/workers/oict-energetika/tasks/FetchBuildingsTask.js.map +1 -0
  46. package/dist/integration-engine/workers/oict-energetika/tasks/FetchConsumptionTask.d.ts +13 -0
  47. package/dist/integration-engine/workers/oict-energetika/tasks/FetchConsumptionTask.js +66 -0
  48. package/dist/integration-engine/workers/oict-energetika/tasks/FetchConsumptionTask.js.map +1 -0
  49. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDataTask.d.ts +10 -0
  50. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDataTask.js +32 -0
  51. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDataTask.js.map +1 -0
  52. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDevicesTask.d.ts +9 -0
  53. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDevicesTask.js +44 -0
  54. package/dist/integration-engine/workers/oict-energetika/tasks/FetchDevicesTask.js.map +1 -0
  55. package/dist/integration-engine/workers/oict-energetika/transformations/BuildingsTransformation.d.ts +7 -0
  56. package/dist/integration-engine/{transformations/EnesaEnergyBuildingsTransformation.js → workers/oict-energetika/transformations/BuildingsTransformation.js} +131 -133
  57. package/dist/integration-engine/workers/oict-energetika/transformations/BuildingsTransformation.js.map +1 -0
  58. package/dist/integration-engine/workers/oict-energetika/transformations/ConsumptionTransformation.d.ts +7 -0
  59. package/dist/integration-engine/{transformations/EnesaEnergyConsumptionTransformation.js → workers/oict-energetika/transformations/ConsumptionTransformation.js} +12 -16
  60. package/dist/integration-engine/workers/oict-energetika/transformations/ConsumptionTransformation.js.map +1 -0
  61. package/dist/integration-engine/workers/oict-energetika/transformations/DevicesTransformation.d.ts +7 -0
  62. package/dist/integration-engine/{transformations/EnesaEnergyDevicesTransformation.js → workers/oict-energetika/transformations/DevicesTransformation.js} +10 -12
  63. package/dist/integration-engine/workers/oict-energetika/transformations/DevicesTransformation.js.map +1 -0
  64. package/dist/schema-definitions/datasources/OictBuildingsJsonSchema.d.ts +3 -0
  65. package/dist/schema-definitions/datasources/OictBuildingsJsonSchema.js +356 -0
  66. package/dist/schema-definitions/datasources/OictBuildingsJsonSchema.js.map +1 -0
  67. package/dist/schema-definitions/datasources/OictConsumptionJsonSchema.d.ts +3 -0
  68. package/dist/schema-definitions/datasources/OictConsumptionJsonSchema.js +19 -0
  69. package/dist/schema-definitions/datasources/OictConsumptionJsonSchema.js.map +1 -0
  70. package/dist/schema-definitions/datasources/OictDevicesJsonSchema.d.ts +3 -0
  71. package/dist/schema-definitions/datasources/OictDevicesJsonSchema.js +42 -0
  72. package/dist/schema-definitions/datasources/OictDevicesJsonSchema.js.map +1 -0
  73. package/dist/schema-definitions/datasources/index.d.ts +3 -0
  74. package/dist/schema-definitions/datasources/index.js +20 -0
  75. package/dist/schema-definitions/datasources/index.js.map +1 -0
  76. package/dist/schema-definitions/datasources/interfaces/IOictBuildingsInput.d.ts +170 -0
  77. package/dist/schema-definitions/datasources/interfaces/IOictBuildingsInput.js +3 -0
  78. package/dist/schema-definitions/datasources/interfaces/IOictBuildingsInput.js.map +1 -0
  79. package/dist/schema-definitions/datasources/interfaces/IOictConsumptionInput.d.ts +8 -0
  80. package/dist/schema-definitions/datasources/interfaces/IOictConsumptionInput.js +3 -0
  81. package/dist/schema-definitions/datasources/interfaces/IOictConsumptionInput.js.map +1 -0
  82. package/dist/schema-definitions/datasources/interfaces/IOictDevicesInput.d.ts +16 -0
  83. package/dist/schema-definitions/datasources/interfaces/IOictDevicesInput.js +3 -0
  84. package/dist/schema-definitions/datasources/interfaces/IOictDevicesInput.js.map +1 -0
  85. package/dist/schema-definitions/datasources/interfaces/index.d.ts +3 -0
  86. package/dist/schema-definitions/datasources/interfaces/index.js +20 -0
  87. package/dist/schema-definitions/datasources/interfaces/index.js.map +1 -0
  88. package/dist/schema-definitions/index.d.ts +2 -6
  89. package/dist/schema-definitions/index.js +1 -6
  90. package/dist/schema-definitions/index.js.map +1 -1
  91. package/dist/schema-definitions/models/BuildingsModel.d.ts +131 -0
  92. package/dist/schema-definitions/models/BuildingsModel.js +393 -0
  93. package/dist/schema-definitions/models/BuildingsModel.js.map +1 -0
  94. package/dist/schema-definitions/models/ConsumptionModel.d.ts +14 -0
  95. package/dist/schema-definitions/models/ConsumptionModel.js +50 -0
  96. package/dist/schema-definitions/models/ConsumptionModel.js.map +1 -0
  97. package/dist/schema-definitions/models/DevicesModel.d.ts +22 -0
  98. package/dist/schema-definitions/models/DevicesModel.js +66 -0
  99. package/dist/schema-definitions/models/DevicesModel.js.map +1 -0
  100. package/dist/schema-definitions/models/index.d.ts +3 -0
  101. package/dist/schema-definitions/models/index.js +20 -0
  102. package/dist/schema-definitions/models/index.js.map +1 -0
  103. package/dist/schema-definitions/models/interfaces/IBuildingsModel.d.ts +125 -0
  104. package/dist/schema-definitions/models/interfaces/IBuildingsModel.js +3 -0
  105. package/dist/schema-definitions/models/interfaces/IBuildingsModel.js.map +1 -0
  106. package/dist/schema-definitions/models/interfaces/IConsumptionModel.d.ts +8 -0
  107. package/dist/schema-definitions/models/interfaces/IConsumptionModel.js +3 -0
  108. package/dist/schema-definitions/models/interfaces/IConsumptionModel.js.map +1 -0
  109. package/dist/schema-definitions/models/interfaces/IDevicesModel.d.ts +16 -0
  110. package/dist/schema-definitions/models/interfaces/IDevicesModel.js +3 -0
  111. package/dist/schema-definitions/models/interfaces/IDevicesModel.js.map +1 -0
  112. package/dist/schema-definitions/models/interfaces/index.d.ts +3 -0
  113. package/dist/schema-definitions/models/interfaces/index.js +20 -0
  114. package/dist/schema-definitions/models/interfaces/index.js.map +1 -0
  115. package/dist/schema-definitions/providers/index.d.ts +0 -1
  116. package/dist/schema-definitions/providers/index.js +0 -1
  117. package/dist/schema-definitions/providers/index.js.map +1 -1
  118. package/package.json +6 -6
  119. package/dist/integration-engine/helpers/EnesaApiHelper.d.ts +0 -17
  120. package/dist/integration-engine/helpers/EnesaApiHelper.js +0 -23
  121. package/dist/integration-engine/helpers/EnesaApiHelper.js.map +0 -1
  122. package/dist/integration-engine/transformations/EnesaEnergyBuildingsTransformation.d.ts +0 -8
  123. package/dist/integration-engine/transformations/EnesaEnergyBuildingsTransformation.js.map +0 -1
  124. package/dist/integration-engine/transformations/EnesaEnergyConsumptionTransformation.d.ts +0 -8
  125. package/dist/integration-engine/transformations/EnesaEnergyConsumptionTransformation.js.map +0 -1
  126. package/dist/integration-engine/transformations/EnesaEnergyDevicesTransformation.d.ts +0 -8
  127. package/dist/integration-engine/transformations/EnesaEnergyDevicesTransformation.js.map +0 -1
  128. package/dist/integration-engine/workers/EnergeticsEnesaWorker.d.ts +0 -27
  129. package/dist/integration-engine/workers/EnergeticsEnesaWorker.js +0 -142
  130. package/dist/integration-engine/workers/EnergeticsEnesaWorker.js.map +0 -1
  131. package/dist/schema-definitions/providers/EnergeticsEnesa.d.ts +0 -1087
  132. package/dist/schema-definitions/providers/EnergeticsEnesa.js +0 -35
  133. package/dist/schema-definitions/providers/EnergeticsEnesa.js.map +0 -1
  134. package/dist/schema-definitions/providers/EnergeticsEnesaDatasourceSchemas.d.ts +0 -592
  135. package/dist/schema-definitions/providers/EnergeticsEnesaDatasourceSchemas.js +0 -685
  136. package/dist/schema-definitions/providers/EnergeticsEnesaDatasourceSchemas.js.map +0 -1
  137. package/dist/schema-definitions/providers/EnergeticsEnesaOutputSchemas.d.ts +0 -463
  138. package/dist/schema-definitions/providers/EnergeticsEnesaOutputSchemas.js +0 -608
  139. package/dist/schema-definitions/providers/EnergeticsEnesaOutputSchemas.js.map +0 -1
  140. package/dist/schema-definitions/providers/EnergeticsEnesaSDMA.d.ts +0 -5
  141. package/dist/schema-definitions/providers/EnergeticsEnesaSDMA.js +0 -202
  142. package/dist/schema-definitions/providers/EnergeticsEnesaSDMA.js.map +0 -1
@@ -1,2 +1 @@
1
- export * from "./EnesaApiHelper";
2
1
  export * from "./UnimonitorCemApiHelper";
@@ -14,6 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./EnesaApiHelper"), exports);
18
17
  __exportStar(require("./UnimonitorCemApiHelper"), exports);
19
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC"}
@@ -1,4 +1,5 @@
1
- export * from "./helpers";
1
+ import { AbstractWorker } from "@golemio/core/dist/integration-engine/workers";
2
+ export * from "./queueDefinitions";
2
3
  export * from "./transformations";
3
4
  export * from "./workers";
4
- export * from "./queueDefinitions";
5
+ export declare const workers: Array<new () => AbstractWorker>;
@@ -14,8 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./helpers"), exports);
17
+ exports.workers = void 0;
18
+ const OictEnergetikaWorker_1 = require("./workers/oict-energetika/OictEnergetikaWorker");
19
+ __exportStar(require("./queueDefinitions"), exports);
18
20
  __exportStar(require("./transformations"), exports);
19
21
  __exportStar(require("./workers"), exports);
20
- __exportStar(require("./queueDefinitions"), exports);
22
+ exports.workers = [OictEnergetikaWorker_1.OictEnergetikaWorker];
21
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,oDAAkC;AAClC,4CAA0B;AAC1B,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yFAAwF;AAGxF,qDAAmC;AACnC,oDAAkC;AAClC,4CAA0B;AAEb,QAAA,OAAO,GAAoC,CAAC,2CAAoB,CAAC,CAAC"}
@@ -1,3 +1,6 @@
1
1
  import { IQueueDefinition } from "@golemio/core/dist/integration-engine/queueprocessors";
2
+ /**
3
+ * @deprecated Use the new worker definitions
4
+ */
2
5
  declare const queueDefinitions: IQueueDefinition[];
3
6
  export { queueDefinitions };
@@ -1,24 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.queueDefinitions = void 0;
4
+ const workers_1 = require("./workers");
4
5
  const _sch_1 = require("../schema-definitions");
5
6
  const config_1 = require("@golemio/core/dist/integration-engine/config");
6
- const workers_1 = require("./workers");
7
+ /**
8
+ * @deprecated Use the new worker definitions
9
+ */
7
10
  const queueDefinitions = [
8
11
  {
9
12
  name: _sch_1.EnergeticsSchema.name,
10
13
  queuePrefix: config_1.config.RABBIT_EXCHANGE_NAME + "." + _sch_1.EnergeticsSchema.name.toLowerCase(),
11
14
  queues: [
12
- {
13
- name: "fetchEnesaXDaysData",
14
- options: {
15
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
16
- deadLetterRoutingKey: "dead",
17
- messageTtl: 2 * 60 * 60 * 1000, // 2 hours
18
- },
19
- worker: workers_1.EnergeticsEnesaWorker,
20
- workerMethod: "fetchXDaysData",
21
- },
22
15
  {
23
16
  name: "fetchVpalacXHoursData",
24
17
  options: {
@@ -1 +1 @@
1
- {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,gDAAwC;AACxC,yEAAsE;AAEtE,uCAA4E;AAE5E,MAAM,gBAAgB,GAAuB;IACzC;QACI,IAAI,EAAE,uBAAgB,CAAC,IAAI;QAC3B,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,uBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE;QACpF,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU;iBAC7C;gBACD,MAAM,EAAE,+BAAqB;gBAC7B,YAAY,EAAE,gBAAgB;aACjC;YACD;gBACI,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU;iBACzC;gBACD,MAAM,EAAE,gCAAsB;gBAC9B,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,gCAAsB;gBAC9B,YAAY,EAAE,gBAAgB;aACjC;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
1
+ {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,uCAAqD;AACrD,gDAAwC;AACxC,yEAAsE;AAGtE;;GAEG;AACH,MAAM,gBAAgB,GAAuB;IACzC;QACI,IAAI,EAAE,uBAAgB,CAAC,IAAI;QAC3B,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,uBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE;QACpF,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU;iBACzC;gBACD,MAAM,EAAE,gCAAsB;gBAC9B,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,gCAAsB;gBAC9B,YAAY,EAAE,gBAAgB;aACjC;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
@@ -1,6 +1,3 @@
1
- export * from "./EnesaEnergyBuildingsTransformation";
2
- export * from "./EnesaEnergyConsumptionTransformation";
3
- export * from "./EnesaEnergyDevicesTransformation";
4
1
  export * from "./VpalacMeasurementTransformation";
5
2
  export * from "./VpalacMeasuringEquipmentTransformation";
6
3
  export * from "./VpalacMeterTypeTransformation";
@@ -14,9 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./EnesaEnergyBuildingsTransformation"), exports);
18
- __exportStar(require("./EnesaEnergyConsumptionTransformation"), exports);
19
- __exportStar(require("./EnesaEnergyDevicesTransformation"), exports);
20
17
  __exportStar(require("./VpalacMeasurementTransformation"), exports);
21
18
  __exportStar(require("./VpalacMeasuringEquipmentTransformation"), exports);
22
19
  __exportStar(require("./VpalacMeterTypeTransformation"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uEAAqD;AACrD,yEAAuD;AACvD,qEAAmD;AACnD,oEAAkD;AAClD,2EAAyD;AACzD,kEAAgD;AAChD,+EAA6D;AAC7D,8DAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oEAAkD;AAClD,2EAAyD;AACzD,kEAAgD;AAChD,+EAA6D;AAC7D,8DAA4C"}
@@ -1,3 +1,2 @@
1
1
  export * from "./EnergeticsBaseWorker";
2
- export * from "./EnergeticsEnesaWorker";
3
2
  export * from "./EnergeticsVpalacWorker";
@@ -15,6 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./EnergeticsBaseWorker"), exports);
18
- __exportStar(require("./EnergeticsEnesaWorker"), exports);
19
18
  __exportStar(require("./EnergeticsVpalacWorker"), exports);
20
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0DAAwC;AACxC,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,2DAAyC"}
@@ -0,0 +1,5 @@
1
+ import { AbstractWorker } from "@golemio/core/dist/integration-engine/workers";
2
+ export declare class OictEnergetikaWorker extends AbstractWorker {
3
+ protected name: string;
4
+ constructor();
5
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OictEnergetikaWorker = void 0;
4
+ const workers_1 = require("@golemio/core/dist/integration-engine/workers");
5
+ const FetchBuildingsTask_1 = require("./tasks/FetchBuildingsTask");
6
+ const FetchConsumptionTask_1 = require("./tasks/FetchConsumptionTask");
7
+ const FetchDataTask_1 = require("./tasks/FetchDataTask");
8
+ const FetchDevicesTask_1 = require("./tasks/FetchDevicesTask");
9
+ class OictEnergetikaWorker extends workers_1.AbstractWorker {
10
+ constructor() {
11
+ super();
12
+ this.name = "energeticsOICT";
13
+ // Register tasks
14
+ this.registerTask(new FetchDataTask_1.FetchDataTask(this.getQueuePrefix()));
15
+ this.registerTask(new FetchBuildingsTask_1.FetchBuildingsTask(this.getQueuePrefix()));
16
+ this.registerTask(new FetchDevicesTask_1.FetchDevicesTask(this.getQueuePrefix()));
17
+ this.registerTask(new FetchConsumptionTask_1.FetchConsumptionTask(this.getQueuePrefix()));
18
+ }
19
+ }
20
+ exports.OictEnergetikaWorker = OictEnergetikaWorker;
21
+ //# sourceMappingURL=OictEnergetikaWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OictEnergetikaWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/oict-energetika/OictEnergetikaWorker.ts"],"names":[],"mappings":";;;AAAA,2EAA+E;AAC/E,mEAAgE;AAChE,uEAAoE;AACpE,yDAAsD;AACtD,+DAA4D;AAE5D,MAAa,oBAAqB,SAAQ,wBAAc;IAGpD;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,gBAAgB,CAAC;QAK9B,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,6BAAa,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,YAAY,CAAC,IAAI,uCAAkB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,IAAI,mCAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,2CAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;CACJ;AAZD,oDAYC"}
@@ -0,0 +1,4 @@
1
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
2
+ export declare class BuildingsRepository extends PostgresModel implements IModel {
3
+ constructor();
4
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BuildingsRepository = void 0;
4
+ const _sch_1 = require("../../../../schema-definitions");
5
+ const models_1 = require("../../../../schema-definitions/models");
6
+ const models_2 = require("@golemio/core/dist/integration-engine/models");
7
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
8
+ class BuildingsRepository extends models_2.PostgresModel {
9
+ constructor() {
10
+ super("BuildingsRepository", {
11
+ pgTableName: models_1.BuildingsModel.TABLE_NAME,
12
+ pgSchema: _sch_1.EnergeticsSchema.pgSchema,
13
+ outputSequelizeAttributes: models_1.BuildingsModel.attributeModel,
14
+ savingType: "insertOrUpdate",
15
+ }, new golemio_validator_1.JSONSchemaValidator("BuildingsRepositoryValidator", models_1.BuildingsModel.arrayJsonSchema));
16
+ }
17
+ }
18
+ exports.BuildingsRepository = BuildingsRepository;
19
+ //# sourceMappingURL=BuildingsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuildingsRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/data-access/BuildingsRepository.ts"],"names":[],"mappings":";;;AAAA,yDAAwC;AACxC,kEAA6C;AAC7C,yEAAqF;AACrF,mFAAkF;AAElF,MAAa,mBAAoB,SAAQ,sBAAa;IAClD;QACI,KAAK,CACD,qBAAqB,EACrB;YACI,WAAW,EAAE,uBAAc,CAAC,UAAU;YACtC,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,uBAAc,CAAC,cAAc;YACxD,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,8BAA8B,EAAE,uBAAc,CAAC,eAAe,CAAC,CAC1F,CAAC;IACN,CAAC;CACJ;AAbD,kDAaC"}
@@ -0,0 +1,6 @@
1
+ import { ConsumptionModel } from "../../../../schema-definitions/models/ConsumptionModel";
2
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
3
+ export declare class ConsumptionRepository extends PostgresModel implements IModel {
4
+ constructor();
5
+ saveData: (data: ConsumptionModel[]) => Promise<ConsumptionModel[]>;
6
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ConsumptionRepository = void 0;
13
+ const _sch_1 = require("../../../../schema-definitions");
14
+ const ConsumptionModel_1 = require("../../../../schema-definitions/models/ConsumptionModel");
15
+ const models_1 = require("@golemio/core/dist/integration-engine/models");
16
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
17
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
18
+ class ConsumptionRepository extends models_1.PostgresModel {
19
+ constructor() {
20
+ super("ConsumptionRepository", {
21
+ pgTableName: ConsumptionModel_1.ConsumptionModel.TABLE_NAME,
22
+ pgSchema: _sch_1.EnergeticsSchema.pgSchema,
23
+ outputSequelizeAttributes: ConsumptionModel_1.ConsumptionModel.attributeModel,
24
+ savingType: "insertOrUpdate",
25
+ }, new golemio_validator_1.JSONSchemaValidator("ConsumptionRepositoryValidator", ConsumptionModel_1.ConsumptionModel.arrayJsonSchema));
26
+ this.saveData = (data) => __awaiter(this, void 0, void 0, function* () {
27
+ try {
28
+ return yield this.sequelizeModel.bulkCreate(data, { ignoreDuplicates: true });
29
+ }
30
+ catch (err) {
31
+ throw new golemio_errors_1.CustomError(`[${this.constructor.name}] Could not save data: ${err.message}`, true, this.constructor.name, undefined, err);
32
+ }
33
+ });
34
+ }
35
+ }
36
+ exports.ConsumptionRepository = ConsumptionRepository;
37
+ //# sourceMappingURL=ConsumptionRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsumptionRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/data-access/ConsumptionRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAwC;AACxC,6FAAgE;AAChE,yEAAqF;AACrF,6EAAuE;AACvE,mFAAkF;AAElF,MAAa,qBAAsB,SAAQ,sBAAa;IACpD;QACI,KAAK,CACD,uBAAuB,EACvB;YACI,WAAW,EAAE,mCAAgB,CAAC,UAAU;YACxC,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,mCAAgB,CAAC,cAAc;YAC1D,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,gCAAgC,EAAE,mCAAgB,CAAC,eAAe,CAAC,CAC9F,CAAC;QAGC,aAAQ,GAAG,CAAO,IAAwB,EAA+B,EAAE;YAC9E,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAmB,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;aACnG;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,4BAAW,CACjB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,0BAA0B,GAAG,CAAC,OAAO,EAAE,EAChE,IAAI,EACJ,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,SAAS,EACT,GAAG,CACN,CAAC;aACL;QACL,CAAC,CAAA,CAAC;IAdF,CAAC;CAeJ;AA3BD,sDA2BC"}
@@ -0,0 +1,4 @@
1
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
2
+ export declare class DevicesRepository extends PostgresModel implements IModel {
3
+ constructor();
4
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DevicesRepository = void 0;
4
+ const _sch_1 = require("../../../../schema-definitions");
5
+ const models_1 = require("../../../../schema-definitions/models");
6
+ const models_2 = require("@golemio/core/dist/integration-engine/models");
7
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
8
+ class DevicesRepository extends models_2.PostgresModel {
9
+ constructor() {
10
+ super("DevicesRepository", {
11
+ pgTableName: models_1.DevicesModel.TABLE_NAME,
12
+ pgSchema: _sch_1.EnergeticsSchema.pgSchema,
13
+ outputSequelizeAttributes: models_1.DevicesModel.attributeModel,
14
+ savingType: "insertOrUpdate",
15
+ }, new golemio_validator_1.JSONSchemaValidator("DevicesRepositoryValidator", models_1.DevicesModel.arrayJsonSchema));
16
+ }
17
+ }
18
+ exports.DevicesRepository = DevicesRepository;
19
+ //# sourceMappingURL=DevicesRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevicesRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/data-access/DevicesRepository.ts"],"names":[],"mappings":";;;AAAA,yDAAwC;AACxC,kEAA2C;AAC3C,yEAAqF;AACrF,mFAAkF;AAElF,MAAa,iBAAkB,SAAQ,sBAAa;IAChD;QACI,KAAK,CACD,mBAAmB,EACnB;YACI,WAAW,EAAE,qBAAY,CAAC,UAAU;YACpC,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,qBAAY,CAAC,cAAc;YACtD,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,4BAA4B,EAAE,qBAAY,CAAC,eAAe,CAAC,CACtF,CAAC;IACN,CAAC;CACJ;AAbD,8CAaC"}
@@ -0,0 +1,10 @@
1
+ import { DataSource } from "@golemio/core/dist/integration-engine/datasources";
2
+ import { OictResourceType } from "./helpers";
3
+ interface IDateParams {
4
+ dateFrom: string;
5
+ dateTo: string;
6
+ }
7
+ export declare class OictDataSourceFactory {
8
+ static getDataSource(resourceType: OictResourceType, dateParams?: IDateParams): DataSource;
9
+ }
10
+ export {};
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OictDataSourceFactory = void 0;
4
+ const config_1 = require("@golemio/core/dist/integration-engine/config");
5
+ const datasources_1 = require("@golemio/core/dist/integration-engine/datasources");
6
+ const helpers_1 = require("./helpers");
7
+ class OictDataSourceFactory {
8
+ static getDataSource(resourceType, dateParams) {
9
+ const url = new URL(helpers_1.OictApiHelper.getResourcePath(resourceType), config_1.config.datasources.OICTEnergetikaApiUrl);
10
+ if (dateParams) {
11
+ url.searchParams.set("dateFrom", dateParams.dateFrom);
12
+ url.searchParams.set("dateTo", dateParams.dateTo);
13
+ }
14
+ return new datasources_1.DataSource(helpers_1.OictApiHelper.API_NAME + resourceType + "DataSource", new datasources_1.HTTPProtocolStrategy({
15
+ headers: config_1.config.datasources.OICTEnergetikaApiHeaders,
16
+ method: "GET",
17
+ timeout: 60000,
18
+ url: url.toString(),
19
+ }), new datasources_1.JSONDataTypeStrategy({ resultsPath: "" }), helpers_1.OictApiHelper.getValidator(resourceType));
20
+ }
21
+ }
22
+ exports.OictDataSourceFactory = OictDataSourceFactory;
23
+ //# sourceMappingURL=OictDataSourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OictDataSourceFactory.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/datasources/OictDataSourceFactory.ts"],"names":[],"mappings":";;;AAAA,yEAAsE;AACtE,mFAA2H;AAC3H,uCAA4D;AAO5D,MAAa,qBAAqB;IACvB,MAAM,CAAC,aAAa,CAAC,YAA8B,EAAE,UAAwB;QAChF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,uBAAa,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,eAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;QAE1G,IAAI,UAAU,EAAE;YACZ,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;YACtD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;SACrD;QAED,OAAO,IAAI,wBAAU,CACjB,uBAAa,CAAC,QAAQ,GAAG,YAAY,GAAG,YAAY,EACpD,IAAI,kCAAoB,CAAC;YACrB,OAAO,EAAE,eAAM,CAAC,WAAW,CAAC,wBAAwB;YACpD,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC,EACF,IAAI,kCAAoB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EAC7C,uBAAa,CAAC,YAAY,CAAC,YAAY,CAAC,CAC3C,CAAC;IACN,CAAC;CACJ;AArBD,sDAqBC"}
@@ -0,0 +1,12 @@
1
+ import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
2
+ export declare enum OictResourceType {
3
+ Buildings = "Buildings",
4
+ Consumption = "Consumption",
5
+ ConsumptionVisapp = "ConsumptionVisapp",
6
+ Devices = "Devices"
7
+ }
8
+ export declare class OictApiHelper {
9
+ static API_NAME: string;
10
+ static getResourcePath(resourceType: OictResourceType): string;
11
+ static getValidator(resourceType: OictResourceType): JSONSchemaValidator;
12
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OictApiHelper = exports.OictResourceType = void 0;
4
+ const datasources_1 = require("../../../../../schema-definitions/datasources");
5
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
6
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
7
+ var OictResourceType;
8
+ (function (OictResourceType) {
9
+ OictResourceType["Buildings"] = "Buildings";
10
+ OictResourceType["Consumption"] = "Consumption";
11
+ OictResourceType["ConsumptionVisapp"] = "ConsumptionVisapp";
12
+ OictResourceType["Devices"] = "Devices";
13
+ })(OictResourceType = exports.OictResourceType || (exports.OictResourceType = {}));
14
+ class OictApiHelper {
15
+ static getResourcePath(resourceType) {
16
+ switch (resourceType) {
17
+ // List of buildings in full format
18
+ case OictResourceType.Buildings:
19
+ return "buildings/full";
20
+ // Meter data from commodity providers' APIs
21
+ case OictResourceType.Consumption:
22
+ return "data/consumption";
23
+ // Data from Dot Controls systems
24
+ case OictResourceType.ConsumptionVisapp:
25
+ return "data/visapp";
26
+ // List of meters (water, electricity, gas, etc) in full format
27
+ case OictResourceType.Devices:
28
+ return "devices/full";
29
+ }
30
+ }
31
+ static getValidator(resourceType) {
32
+ const validatorName = `${OictApiHelper.API_NAME}${resourceType}Validator`;
33
+ switch (resourceType) {
34
+ case OictResourceType.Buildings:
35
+ return new golemio_validator_1.JSONSchemaValidator(validatorName, datasources_1.oictBuildingsJsonSchema);
36
+ case OictResourceType.Consumption:
37
+ case OictResourceType.ConsumptionVisapp:
38
+ return new golemio_validator_1.JSONSchemaValidator(validatorName, datasources_1.oictConsumptionJsonSchema);
39
+ case OictResourceType.Devices:
40
+ return new golemio_validator_1.JSONSchemaValidator(validatorName, datasources_1.oictDevicesJsonSchema);
41
+ default:
42
+ throw new golemio_errors_1.CustomError(`Unknown resource type: ${resourceType}`, true, "OictApiHelper");
43
+ }
44
+ }
45
+ }
46
+ exports.OictApiHelper = OictApiHelper;
47
+ OictApiHelper.API_NAME = "OICTEnergetika";
48
+ //# sourceMappingURL=OictApiHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OictApiHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/workers/oict-energetika/datasources/helpers/OictApiHelper.ts"],"names":[],"mappings":";;;AAAA,+EAA6G;AAC7G,6EAAuE;AACvE,mFAAkF;AAElF,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,2CAAuB,CAAA;IACvB,+CAA2B,CAAA;IAC3B,2DAAuC,CAAA;IACvC,uCAAmB,CAAA;AACvB,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B;AAED,MAAa,aAAa;IAGf,MAAM,CAAC,eAAe,CAAC,YAA8B;QACxD,QAAQ,YAAY,EAAE;YAClB,mCAAmC;YACnC,KAAK,gBAAgB,CAAC,SAAS;gBAC3B,OAAO,gBAAgB,CAAC;YAE5B,4CAA4C;YAC5C,KAAK,gBAAgB,CAAC,WAAW;gBAC7B,OAAO,kBAAkB,CAAC;YAE9B,iCAAiC;YACjC,KAAK,gBAAgB,CAAC,iBAAiB;gBACnC,OAAO,aAAa,CAAC;YAEzB,+DAA+D;YAC/D,KAAK,gBAAgB,CAAC,OAAO;gBACzB,OAAO,cAAc,CAAC;SAC7B;IACL,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,YAA8B;QACrD,MAAM,aAAa,GAAG,GAAG,aAAa,CAAC,QAAQ,GAAG,YAAY,WAAW,CAAC;QAE1E,QAAQ,YAAY,EAAE;YAClB,KAAK,gBAAgB,CAAC,SAAS;gBAC3B,OAAO,IAAI,uCAAmB,CAAC,aAAa,EAAE,qCAAuB,CAAC,CAAC;YAE3E,KAAK,gBAAgB,CAAC,WAAW,CAAC;YAClC,KAAK,gBAAgB,CAAC,iBAAiB;gBACnC,OAAO,IAAI,uCAAmB,CAAC,aAAa,EAAE,uCAAyB,CAAC,CAAC;YAE7E,KAAK,gBAAgB,CAAC,OAAO;gBACzB,OAAO,IAAI,uCAAmB,CAAC,aAAa,EAAE,mCAAqB,CAAC,CAAC;YAEzE;gBACI,MAAM,IAAI,4BAAW,CAAC,0BAA0B,YAAY,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;SAC9F;IACL,CAAC;;AAxCL,sCAyCC;AAxCiB,sBAAQ,GAAG,gBAAgB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from "./OictApiHelper";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./OictApiHelper"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/workers/oict-energetika/datasources/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC"}
@@ -0,0 +1,3 @@
1
+ export interface IFetchDataInput {
2
+ targetDays: number;
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IFetchDataInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFetchDataInput.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/interfaces/IFetchDataInput.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { IFetchDataInput } from "../interfaces/IFetchDataInput";
2
+ export declare class FetchDataValidationSchema implements IFetchDataInput {
3
+ targetDays: number;
4
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.FetchDataValidationSchema = void 0;
13
+ const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
14
+ class FetchDataValidationSchema {
15
+ }
16
+ __decorate([
17
+ (0, class_validator_1.IsInt)(),
18
+ (0, class_validator_1.Min)(1),
19
+ __metadata("design:type", Number)
20
+ ], FetchDataValidationSchema.prototype, "targetDays", void 0);
21
+ exports.FetchDataValidationSchema = FetchDataValidationSchema;
22
+ //# sourceMappingURL=FetchDataSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FetchDataSchema.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/schema/FetchDataSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+EAAuE;AAGvE,MAAa,yBAAyB;CAIrC;AADG;IAFC,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;;6DACa;AAHxB,8DAIC"}
@@ -0,0 +1,9 @@
1
+ import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers";
2
+ export declare class FetchBuildingsTask extends AbstractEmptyTask {
3
+ readonly queueName = "fetchBuildings";
4
+ readonly queueTtl: number;
5
+ private readonly buildingsRepository;
6
+ private readonly buildingsTransformation;
7
+ constructor(queuePrefix: string);
8
+ protected execute(): Promise<void>;
9
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.FetchBuildingsTask = void 0;
13
+ const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
14
+ const workers_1 = require("@golemio/core/dist/integration-engine/workers");
15
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
16
+ const BuildingsRepository_1 = require("../data-access/BuildingsRepository");
17
+ const helpers_2 = require("../datasources/helpers");
18
+ const OictDataSourceFactory_1 = require("../datasources/OictDataSourceFactory");
19
+ const BuildingsTransformation_1 = require("../transformations/BuildingsTransformation");
20
+ class FetchBuildingsTask extends workers_1.AbstractEmptyTask {
21
+ constructor(queuePrefix) {
22
+ super(queuePrefix);
23
+ this.queueName = "fetchBuildings";
24
+ this.queueTtl = 29 * 60 * 1000; // 29 minutes
25
+ this.buildingsRepository = new BuildingsRepository_1.BuildingsRepository();
26
+ this.buildingsTransformation = new BuildingsTransformation_1.BuildingsTransformation();
27
+ }
28
+ execute() {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ const datasource = OictDataSourceFactory_1.OictDataSourceFactory.getDataSource(helpers_2.OictResourceType.Buildings);
31
+ try {
32
+ const data = yield datasource.getAll();
33
+ const transformedData = yield this.buildingsTransformation.transform(data);
34
+ yield this.buildingsRepository.save(transformedData);
35
+ }
36
+ catch (err) {
37
+ helpers_1.log.error(err);
38
+ throw new golemio_errors_1.CustomError("Failed to fetch buldings", true, this.constructor.name, undefined, err);
39
+ }
40
+ });
41
+ }
42
+ }
43
+ exports.FetchBuildingsTask = FetchBuildingsTask;
44
+ //# sourceMappingURL=FetchBuildingsTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FetchBuildingsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/workers/oict-energetika/tasks/FetchBuildingsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2EAAoE;AACpE,2EAAkF;AAClF,6EAAuE;AACvE,4EAAyE;AACzE,oDAA0D;AAC1D,gFAA6E;AAC7E,wFAAqF;AAErF,MAAa,kBAAmB,SAAQ,2BAAiB;IAOrD,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QAPP,cAAS,GAAG,gBAAgB,CAAC;QAC7B,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;QAOpD,IAAI,CAAC,mBAAmB,GAAG,IAAI,yCAAmB,EAAE,CAAC;QACrD,IAAI,CAAC,uBAAuB,GAAG,IAAI,iDAAuB,EAAE,CAAC;IACjE,CAAC;IAEe,OAAO;;YACnB,MAAM,UAAU,GAAG,6CAAqB,CAAC,aAAa,CAAC,0BAAgB,CAAC,SAAS,CAAC,CAAC;YAEnF,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC3E,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACxD;YAAC,OAAO,GAAG,EAAE;gBACV,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,MAAM,IAAI,4BAAW,CAAC,0BAA0B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;aAClG;QACL,CAAC;KAAA;CACJ;AAzBD,gDAyBC"}
@@ -0,0 +1,13 @@
1
+ import { AbstractTask } from "@golemio/core/dist/integration-engine/workers";
2
+ import { IFetchDataInput } from "../interfaces/IFetchDataInput";
3
+ import { FetchDataValidationSchema } from "../schema/FetchDataSchema";
4
+ export declare class FetchConsumptionTask extends AbstractTask<IFetchDataInput> {
5
+ readonly queueName = "fetchConsumption";
6
+ readonly queueTtl: number;
7
+ readonly schema: typeof FetchDataValidationSchema;
8
+ private readonly consumptionRepository;
9
+ private readonly consumptionTransformation;
10
+ constructor(queuePrefix: string);
11
+ protected execute({ targetDays }: IFetchDataInput): Promise<void>;
12
+ private getDataSources;
13
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.FetchConsumptionTask = void 0;
13
+ const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
14
+ const workers_1 = require("@golemio/core/dist/integration-engine/workers");
15
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
16
+ const luxon_1 = require("@golemio/core/dist/shared/luxon");
17
+ const ConsumptionRepository_1 = require("../data-access/ConsumptionRepository");
18
+ const helpers_2 = require("../datasources/helpers");
19
+ const OictDataSourceFactory_1 = require("../datasources/OictDataSourceFactory");
20
+ const FetchDataSchema_1 = require("../schema/FetchDataSchema");
21
+ const ConsumptionTransformation_1 = require("../transformations/ConsumptionTransformation");
22
+ class FetchConsumptionTask extends workers_1.AbstractTask {
23
+ constructor(queuePrefix) {
24
+ super(queuePrefix);
25
+ this.queueName = "fetchConsumption";
26
+ this.queueTtl = 10 * 60 * 60 * 1000; // 10 hours
27
+ this.schema = FetchDataSchema_1.FetchDataValidationSchema;
28
+ this.consumptionRepository = new ConsumptionRepository_1.ConsumptionRepository();
29
+ this.consumptionTransformation = new ConsumptionTransformation_1.ConsumptionTransformation();
30
+ }
31
+ execute({ targetDays }) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ const dataSources = this.getDataSources(targetDays);
34
+ for (const dataSource of dataSources) {
35
+ try {
36
+ const data = yield dataSource.getAll();
37
+ const transformedData = yield this.consumptionTransformation.transform(data);
38
+ yield this.consumptionRepository.saveData(transformedData);
39
+ }
40
+ catch (err) {
41
+ helpers_1.log.error(err);
42
+ throw new golemio_errors_1.CustomError("Failed to fetch consumption data", true, this.constructor.name, undefined, err);
43
+ }
44
+ }
45
+ });
46
+ }
47
+ *getDataSources(targetDays) {
48
+ const currentDate = luxon_1.DateTime.now().startOf("day");
49
+ const dateFrom = currentDate.minus({ days: targetDays });
50
+ const intervals = luxon_1.Interval.fromDateTimes(dateFrom, currentDate).splitBy({ days: 5 });
51
+ for (const interval of intervals) {
52
+ const start = interval.start.startOf("day");
53
+ const end = interval.end.startOf("day");
54
+ yield OictDataSourceFactory_1.OictDataSourceFactory.getDataSource(helpers_2.OictResourceType.Consumption, {
55
+ dateFrom: start.toISODate(),
56
+ dateTo: end.toISODate(),
57
+ });
58
+ yield OictDataSourceFactory_1.OictDataSourceFactory.getDataSource(helpers_2.OictResourceType.ConsumptionVisapp, {
59
+ dateFrom: start.toISODate(),
60
+ dateTo: end.toISODate(),
61
+ });
62
+ }
63
+ }
64
+ }
65
+ exports.FetchConsumptionTask = FetchConsumptionTask;
66
+ //# sourceMappingURL=FetchConsumptionTask.js.map