@steedos/service-metadata-triggers 2.4.8 → 2.4.9-beta.2

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.
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const actionsHandler_1 = require("./actionsHandler");
5
+ const _ = require("lodash");
5
6
  module.exports = {
6
7
  name: "triggers",
7
8
  namespace: "steedos",
@@ -126,7 +127,53 @@ module.exports = {
126
127
  return yield actionsHandler_1.ActionHandlers.refresh(ctx);
127
128
  });
128
129
  }
129
- }
130
+ },
131
+ "$packages.changed": {
132
+ handler(ctx) {
133
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
134
+ const { broker } = ctx;
135
+ const services = broker.registry.getServiceList({ skipInternal: true, withActions: true });
136
+ for (const service of services) {
137
+ const { name: serviceName, actions } = service;
138
+ for (const key in actions) {
139
+ if (Object.prototype.hasOwnProperty.call(actions, key)) {
140
+ const action = actions[key];
141
+ if (action.trigger) {
142
+ const { trigger, rawName, name } = action;
143
+ const { objectName, when } = trigger;
144
+ if (objectName && when && _.isArray(when)) {
145
+ for (const w of when) {
146
+ const data = {
147
+ name: name,
148
+ listenTo: objectName,
149
+ when: w,
150
+ action: rawName
151
+ };
152
+ const meta = {
153
+ metadataServiceName: serviceName,
154
+ caller: {
155
+ nodeID: broker.nodeID + '',
156
+ service: {
157
+ name: serviceName
158
+ }
159
+ }
160
+ };
161
+ yield actionsHandler_1.ActionHandlers.add({
162
+ broker: ctx.broker,
163
+ params: {
164
+ data: data
165
+ },
166
+ meta: meta
167
+ });
168
+ }
169
+ }
170
+ }
171
+ }
172
+ }
173
+ }
174
+ });
175
+ }
176
+ },
130
177
  },
131
178
  methods: {},
132
179
  created() {
@@ -1 +1 @@
1
- {"version":3,"file":"triggers.service.js","sourceRoot":"","sources":["../src/triggers.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"triggers.service.js","sourceRoot":"","sources":["../src/triggers.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos/service-metadata-triggers",
3
- "version": "2.4.8",
3
+ "version": "2.4.9-beta.2",
4
4
  "description": "",
5
5
  "main": "lib/triggers.service.js",
6
6
  "scripts": {
@@ -33,5 +33,5 @@
33
33
  "publishConfig": {
34
34
  "access": "public"
35
35
  },
36
- "gitHead": "355939fd49a9171c8531433d487385f07b235c86"
36
+ "gitHead": "ca204dc81967781730b3386847fe72f447591c8d"
37
37
  }
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  import { ActionHandlers, METADATA_TYPE } from './actionsHandler';
3
+ import _ = require('lodash');
3
4
 
4
5
  module.exports = {
5
6
  name: "triggers",
@@ -188,7 +189,68 @@ module.exports = {
188
189
  async handler(ctx) {
189
190
  return await ActionHandlers.refresh(ctx);
190
191
  }
191
- }
192
+ },
193
+ /**
194
+ * 监听 $services.changed 事件,扫描services下的actions,对于其中定义的trigger参数进行解析,注入到trigger注册中心。
195
+ */
196
+ "$packages.changed": {
197
+ async handler(ctx) {
198
+ const { broker } = ctx
199
+ const services = broker.registry.getServiceList({ skipInternal: true, withActions: true })
200
+ for (const service of services) {
201
+ const { name: serviceName, actions } = service
202
+ /**
203
+ actions 结构
204
+ {
205
+ 'test.triggerSpaceUsers': {
206
+ trigger: { objectName: 'test__c', when: [Array] },
207
+ rawName: 'triggerSpaceUsers',
208
+ name: 'test.triggerSpaceUsers'
209
+ }
210
+ }
211
+ */
212
+ for (const key in actions) {
213
+ if (Object.prototype.hasOwnProperty.call(actions, key)) {
214
+ const action = actions[key];
215
+ if (action.trigger) {
216
+ const { trigger, rawName, name } = action
217
+ const { objectName, when } = trigger
218
+ if (objectName && when && _.isArray(when)) {
219
+ for (const w of when) {
220
+ const data = {
221
+ name: name,
222
+ listenTo: objectName,
223
+ when: w,
224
+ action: rawName
225
+ };
226
+ const meta = {
227
+ metadataServiceName: serviceName,
228
+ caller: {
229
+ nodeID: broker.nodeID + '',
230
+ service: {
231
+ name: serviceName
232
+ }
233
+ }
234
+ };
235
+ await ActionHandlers.add({
236
+ broker: ctx.broker,
237
+ params: {
238
+ data: data
239
+ },
240
+ meta: meta
241
+ });
242
+ }
243
+
244
+
245
+ }
246
+
247
+ }
248
+ }
249
+ }
250
+
251
+ }
252
+ }
253
+ },
192
254
  },
193
255
 
194
256
  /**