@webda/gcp 4.0.0-beta.1 → 4.0.0-beta.3

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 (57) hide show
  1. package/README.md +54 -4
  2. package/lib/index.d.ts +5 -4
  3. package/lib/index.d.ts.map +1 -0
  4. package/lib/index.js +4 -4
  5. package/lib/index.js.map +1 -1
  6. package/lib/services/firestore.service.d.ts +236 -0
  7. package/lib/services/firestore.service.d.ts.map +1 -0
  8. package/lib/services/firestore.service.js +692 -0
  9. package/lib/services/firestore.service.js.map +1 -0
  10. package/lib/services/index.d.ts +2 -1
  11. package/lib/services/index.d.ts.map +1 -0
  12. package/lib/services/index.js +1 -1
  13. package/lib/services/index.js.map +1 -1
  14. package/lib/services/{kms.d.ts → kms.service.d.ts} +14 -14
  15. package/lib/services/kms.service.d.ts.map +1 -0
  16. package/lib/services/{kms.js → kms.service.js} +18 -16
  17. package/lib/services/kms.service.js.map +1 -0
  18. package/lib/services/{pubsub.d.ts → pubsub.service.d.ts} +23 -3
  19. package/lib/services/pubsub.service.d.ts.map +1 -0
  20. package/lib/services/{pubsub.js → pubsub.service.js} +36 -10
  21. package/lib/services/pubsub.service.js.map +1 -0
  22. package/lib/services/{queue.d.ts → queue.service.d.ts} +32 -14
  23. package/lib/services/queue.service.d.ts.map +1 -0
  24. package/lib/services/{queue.js → queue.service.js} +65 -38
  25. package/lib/services/queue.service.js.map +1 -0
  26. package/lib/services/storage.service.d.ts +268 -0
  27. package/lib/services/storage.service.d.ts.map +1 -0
  28. package/lib/services/{storage.js → storage.service.js} +125 -78
  29. package/lib/services/storage.service.js.map +1 -0
  30. package/package.json +34 -40
  31. package/webda.module.json +1120 -1462
  32. package/lib/index.spec.d.ts +0 -4
  33. package/lib/index.spec.js +0 -7
  34. package/lib/index.spec.js.map +0 -1
  35. package/lib/services/firestore.d.ts +0 -134
  36. package/lib/services/firestore.js +0 -424
  37. package/lib/services/firestore.js.map +0 -1
  38. package/lib/services/firestore.spec.d.ts +0 -1
  39. package/lib/services/firestore.spec.js +0 -194
  40. package/lib/services/firestore.spec.js.map +0 -1
  41. package/lib/services/kms.js.map +0 -1
  42. package/lib/services/kms.spec.d.ts +0 -1
  43. package/lib/services/kms.spec.js +0 -53
  44. package/lib/services/kms.spec.js.map +0 -1
  45. package/lib/services/pubsub.js.map +0 -1
  46. package/lib/services/pubsub.spec.d.ts +0 -1
  47. package/lib/services/pubsub.spec.js +0 -95
  48. package/lib/services/pubsub.spec.js.map +0 -1
  49. package/lib/services/queue.js.map +0 -1
  50. package/lib/services/queue.spec.d.ts +0 -1
  51. package/lib/services/queue.spec.js +0 -104
  52. package/lib/services/queue.spec.js.map +0 -1
  53. package/lib/services/storage.d.ts +0 -214
  54. package/lib/services/storage.js.map +0 -1
  55. package/lib/services/storage.spec.d.ts +0 -1
  56. package/lib/services/storage.spec.js +0 -220
  57. package/lib/services/storage.spec.js.map +0 -1
package/webda.module.json CHANGED
@@ -1,1545 +1,1203 @@
1
1
  {
2
+ "$schema": "https://webda.io/schemas/webda.module.v4.json",
2
3
  "beans": {},
3
4
  "deployers": {},
4
5
  "moddas": {
5
- "Webda/GoogleCloudFireStore": "lib/services/firestore:default",
6
- "Webda/GoogleCloudKMS": "lib/services/kms:GCPKMSService",
7
- "Webda/GoogleCloudPubSub": "lib/services/pubsub:default",
8
- "Webda/GoogleCloudQueue": "lib/services/queue:default",
9
- "Webda/GoogleCloudStorage": "lib/services/storage:default"
10
- },
11
- "models": {
12
- "graph": {},
13
- "tree": {},
14
- "plurals": {},
15
- "list": {},
16
- "reflections": {}
17
- },
18
- "schemas": {
19
- "Webda/BinaryFile": {
20
- "type": "object",
21
- "properties": {
22
- "hash": {
23
- "type": "string",
24
- "description": "Will be computed by the service\n\nhash of the content"
25
- },
26
- "challenge": {
27
- "type": "string",
28
- "description": "Will be computed by the service\n\nhash of the content prefixed by 'WEBDA'"
29
- },
30
- "size": {
31
- "type": "number",
32
- "description": "Size of the binary"
33
- },
34
- "name": {
35
- "type": "string",
36
- "description": "Current name"
37
- },
38
- "mimetype": {
39
- "type": "string",
40
- "description": "Mimetype of the binary"
41
- },
42
- "metadata": {
43
- "description": "Metadatas stored along with the binary"
44
- },
45
- "originalname": {
46
- "type": "string",
47
- "description": "Original name"
48
- }
49
- },
50
- "required": [
51
- "mimetype",
52
- "name",
53
- "size"
54
- ],
55
- "description": "Represent a file to store",
56
- "$schema": "http://json-schema.org/draft-07/schema#",
57
- "title": "BinaryFile"
58
- },
59
6
  "Webda/GoogleCloudFireStore": {
60
- "type": "object",
61
- "properties": {
62
- "type": {
63
- "type": "string",
64
- "description": "Type of the service"
65
- },
66
- "url": {
67
- "type": "string",
68
- "description": "URL on which to serve the content"
69
- },
70
- "model": {
71
- "type": "string",
72
- "description": "Webda model to use within the Store",
73
- "default": "Webda/CoreModel"
74
- },
75
- "additionalModels": {
76
- "type": "array",
77
- "items": {
78
- "type": "string"
7
+ "Import": "lib/services/firestore.service:default",
8
+ "Schema": {
9
+ "$schema": "http://json-schema.org/draft-07/schema#",
10
+ "additionalProperties": false,
11
+ "definitions": {
12
+ "FireStoreIndex": {
13
+ "additionalProperties": {
14
+ "enum": [
15
+ "asc",
16
+ "desc"
17
+ ],
18
+ "type": "string"
19
+ },
20
+ "description": "Definition of a FireStore index",
21
+ "type": "object"
79
22
  },
80
- "description": "Additional models\n\nAllow this store to manage other models",
81
- "default": []
82
- },
83
- "asyncDelete": {
84
- "type": "boolean",
85
- "description": "async delete"
86
- },
87
- "expose": {
88
- "$ref": "#/definitions/StoreExposeParameters",
89
- "description": "Expose the service to an urls",
90
- "deprecated": "will probably be removed in 4.0 in favor of Expose annotation"
91
- },
92
- "strict": {
93
- "type": "boolean",
94
- "description": "Allow to load object that does not have the type data\n\nIf set to true, then the Store will only managed the defined _model and no model extending this one",
95
- "default": false
96
- },
97
- "defaultModel": {
98
- "type": "boolean",
99
- "description": "When __type model not found, use the model If strict is setup this parameter is not used",
100
- "default": true
101
- },
102
- "forceModel": {
103
- "type": "boolean",
104
- "description": "If set, Store will ignore the __type",
105
- "default": false
106
- },
107
- "slowQueryThreshold": {
108
- "type": "number",
109
- "description": "Slow query threshold",
110
- "default": 30000
23
+ "collections": {
24
+ "additionalProperties": {
25
+ "type": "string"
26
+ },
27
+ "description": "Per-model collection overrides.\nMaps a model identifier (e.g. \"Webda/User\") to a collection name.\nWhen not specified, the first model uses `collection` and others use their identifier\nlowercased with \"/\" replaced by \"_\".",
28
+ "type": "object"
29
+ },
30
+ "modelAliases": {
31
+ "additionalProperties": {
32
+ "type": "string"
33
+ },
34
+ "description": "Model Aliases to allow easier rename of Model",
35
+ "type": "object"
36
+ }
111
37
  },
112
- "modelAliases": {
113
- "type": "object",
114
- "additionalProperties": {
38
+ "description": "Firebase parameters",
39
+ "properties": {
40
+ "collection": {
41
+ "description": "Collection to use",
115
42
  "type": "string"
116
43
  },
117
- "description": "Model Aliases to allow easier rename of Model"
118
- },
119
- "noCache": {
120
- "type": "boolean",
121
- "description": "Disable default memory cache"
122
- },
123
- "collection": {
124
- "type": "string",
125
- "description": "Collection to use"
126
- },
127
- "compoundIndexes": {
128
- "type": "array",
129
- "items": {
130
- "$ref": "#/definitions/FireStoreIndex"
44
+ "collections": {
45
+ "$ref": "#/definitions/collections",
46
+ "description": "Per-model collection overrides.\nMaps a model identifier (e.g. \"Webda/User\") to a collection name.\nWhen not specified, the first model uses `collection` and others use their identifier\nlowercased with \"/\" replaced by \"_\"."
131
47
  },
132
- "description": "To allow efficient query on several fields"
133
- },
134
- "openapi": {
135
- "type": "object",
136
- "additionalProperties": true
137
- }
138
- },
139
- "required": [
140
- "asyncDelete",
141
- "collection",
142
- "compoundIndexes",
143
- "slowQueryThreshold",
144
- "type"
145
- ],
146
- "description": "Firebase parameters",
147
- "$schema": "http://json-schema.org/draft-07/schema#",
148
- "definitions": {
149
- "StoreExposeParameters": {
150
- "type": "object",
151
- "properties": {
152
- "url": {
153
- "type": "string",
154
- "description": "URL endpoint to use to expose REST Resources API",
155
- "default": "service.getName().toLowerCase()"
48
+ "compoundIndexes": {
49
+ "description": "To allow efficient query on several fields",
50
+ "items": {
51
+ "$ref": "#/definitions/FireStoreIndex"
156
52
  },
157
- "restrict": {
158
- "type": "object",
159
- "properties": {
160
- "create": {
161
- "type": "boolean",
162
- "description": "Do not expose the POST"
163
- },
164
- "update": {
165
- "type": "boolean",
166
- "description": "Do not expose the PUT and PATCH"
167
- },
168
- "get": {
169
- "type": "boolean",
170
- "description": "Do not expose the GET"
171
- },
172
- "delete": {
173
- "type": "boolean",
174
- "description": "Do not expose the DELETE"
175
- },
176
- "query": {
177
- "type": "boolean",
178
- "description": "Do not expose the query endpoint"
179
- }
180
- },
181
- "description": "You can restrict any part of the CRUD",
182
- "default": {}
53
+ "see": "https://firebase.google.com/docs/firestore/query-data/queries",
54
+ "type": "array"
55
+ },
56
+ "defaultModel": {
57
+ "default": true,
58
+ "description": "When __type model not found, use the model\nIf strict is setup this parameter is not used",
59
+ "type": "boolean"
60
+ },
61
+ "forceModel": {
62
+ "default": false,
63
+ "description": "If set, Store will ignore the __type",
64
+ "type": "boolean"
65
+ },
66
+ "modelAliases": {
67
+ "$ref": "#/definitions/modelAliases",
68
+ "description": "Model Aliases to allow easier rename of Model"
69
+ },
70
+ "models": {
71
+ "default": [
72
+ "Webda/RegistryEntry"
73
+ ],
74
+ "description": "Models managed by this Store.",
75
+ "items": {
76
+ "type": "string"
183
77
  },
184
- "queryMethod": {
185
- "type": "string",
186
- "enum": [
187
- "PUT",
188
- "GET"
189
- ],
190
- "description": "For confidentiality sometimes you might prefer to expose query through PUT To avoid GET logging",
191
- "default": "GET"
192
- }
78
+ "type": "array"
193
79
  },
194
- "deprecated": "Store should not be exposed directly anymore\nYou should use the DomainService instead"
195
- },
196
- "FireStoreIndex": {
197
- "type": "object",
198
- "additionalProperties": {
199
- "type": "string",
200
- "enum": [
201
- "asc",
202
- "desc"
203
- ]
80
+ "noCache": {
81
+ "default": false,
82
+ "description": "Disable default memory cache",
83
+ "type": "boolean"
204
84
  },
205
- "description": "Definition of a FireStore index"
206
- }
85
+ "slowQueryThreshold": {
86
+ "default": 30000,
87
+ "description": "Slow query threshold",
88
+ "type": "number"
89
+ },
90
+ "strict": {
91
+ "default": false,
92
+ "description": "Allow to load object that does not have the type data\n\nIf set to true, then the Store will only managed the defined _model and no\nmodel extending this one",
93
+ "type": "boolean"
94
+ },
95
+ "type": {
96
+ "description": "Type of the service",
97
+ "type": "string"
98
+ },
99
+ "openapi": {
100
+ "type": "object",
101
+ "additionalProperties": true
102
+ }
103
+ },
104
+ "required": [
105
+ "collection",
106
+ "type"
107
+ ],
108
+ "type": "object",
109
+ "title": "FireStore"
207
110
  },
208
- "title": "FireStore"
111
+ "Configuration": "lib/services/firestore.service:FireStoreParameters"
209
112
  },
210
113
  "Webda/GoogleCloudKMS": {
211
- "type": "object",
212
- "properties": {
213
- "type": {
214
- "type": "string",
215
- "description": "Type of the service"
216
- },
217
- "url": {
218
- "type": "string",
219
- "description": "URL on which to serve the content"
220
- },
221
- "defaultKey": {
222
- "type": "string",
223
- "description": "Encryption key to use by default",
224
- "default": "WEBDA_GCP_KMS_KEY env variable"
114
+ "Import": "lib/services/kms.service:GCPKMSService",
115
+ "Schema": {
116
+ "$schema": "http://json-schema.org/draft-07/schema#",
117
+ "additionalProperties": false,
118
+ "description": "Parameters for the KMS Service",
119
+ "properties": {
120
+ "defaultKey": {
121
+ "default": "WEBDA_GCP_KMS_KEY env variable",
122
+ "description": "Encryption key to use by default",
123
+ "type": "string"
124
+ },
125
+ "type": {
126
+ "description": "Type of the service",
127
+ "type": "string"
128
+ },
129
+ "openapi": {
130
+ "type": "object",
131
+ "additionalProperties": true
132
+ }
225
133
  },
226
- "openapi": {
227
- "type": "object",
228
- "additionalProperties": true
229
- }
134
+ "required": [
135
+ "type"
136
+ ],
137
+ "type": "object",
138
+ "title": "GCPKMSService"
230
139
  },
231
- "required": [
232
- "type"
233
- ],
234
- "description": "Parameters for the KMS Service",
235
- "$schema": "http://json-schema.org/draft-07/schema#",
236
- "title": "GCPKMSService"
140
+ "Configuration": "lib/services/kms.service:KMSServiceParameters"
237
141
  },
238
142
  "Webda/GoogleCloudPubSub": {
239
- "type": "object",
240
- "properties": {
241
- "type": {
242
- "type": "string",
243
- "description": "Type of the service"
244
- },
245
- "url": {
246
- "type": "string",
247
- "description": "URL on which to serve the content"
248
- },
249
- "topic": {
250
- "type": "string",
251
- "description": "Topic to use on GCP"
252
- },
253
- "subscriptionOptions": {
254
- "$ref": "#/definitions/CreateSubscriptionOptions",
255
- "description": "Subscription options to pass to GCP"
256
- },
257
- "openapi": {
258
- "type": "object",
259
- "additionalProperties": true
260
- }
261
- },
262
- "required": [
263
- "topic",
264
- "type"
265
- ],
266
- "$schema": "http://json-schema.org/draft-07/schema#",
267
- "definitions": {
268
- "CreateSubscriptionOptions": {
269
- "type": "object",
270
- "properties": {
271
- "gaxOpts": {
272
- "type": "object",
273
- "properties": {
274
- "timeout": {
275
- "type": "number"
276
- },
277
- "retry": {
278
- "anyOf": [
279
- {
280
- "$ref": "#/definitions/Partial%3Cclass-657338214-822-3488-657338214-0-17392%3E"
281
- },
282
- {
283
- "type": "null"
284
- }
285
- ]
286
- },
287
- "autoPaginate": {
288
- "type": "boolean"
289
- },
290
- "maxResults": {
291
- "type": "number"
292
- },
293
- "maxRetries": {
294
- "type": "number"
295
- },
296
- "otherArgs": {
297
- "type": "object"
298
- },
299
- "bundleOptions": {
300
- "anyOf": [
301
- {
302
- "type": "object",
303
- "properties": {
304
- "elementCountLimit": {
305
- "type": "number"
306
- },
307
- "requestByteLimit": {
308
- "type": "number"
309
- },
310
- "elementCountThreshold": {
311
- "type": "number"
312
- },
313
- "requestByteThreshold": {
314
- "type": "number"
315
- },
316
- "delayThreshold": {
317
- "type": "number"
318
- }
319
- }
320
- },
321
- {
322
- "type": "null"
323
- }
324
- ]
325
- },
326
- "isBundling": {
327
- "type": "boolean"
328
- },
329
- "longrunning": {
330
- "type": "object",
331
- "properties": {
332
- "maxRetries": {
333
- "type": "number"
334
- },
335
- "initialRetryDelayMillis": {
336
- "type": "number"
337
- },
338
- "retryDelayMultiplier": {
339
- "type": "number"
340
- },
341
- "maxRetryDelayMillis": {
342
- "type": "number"
343
- },
344
- "initialRpcTimeoutMillis": {
345
- "type": [
346
- "number",
347
- "null"
348
- ]
349
- },
350
- "maxRpcTimeoutMillis": {
351
- "type": [
352
- "number",
353
- "null"
354
- ]
355
- },
356
- "totalTimeoutMillis": {
357
- "type": [
358
- "number",
359
- "null"
360
- ]
361
- },
362
- "rpcTimeoutMultiplier": {
363
- "type": [
364
- "number",
365
- "null"
366
- ]
367
- }
368
- },
369
- "required": [
370
- "initialRetryDelayMillis",
371
- "retryDelayMultiplier",
372
- "maxRetryDelayMillis"
373
- ]
374
- },
375
- "apiName": {
376
- "type": "string"
377
- },
378
- "retryRequestOptions": {
379
- "type": "object",
380
- "properties": {
381
- "objectMode": {
382
- "type": "boolean"
383
- },
384
- "request": {},
385
- "retries": {
386
- "type": "number"
387
- },
388
- "noResponseRetries": {
389
- "type": "number"
390
- },
391
- "currentRetryAttempt": {
392
- "type": "number"
393
- },
394
- "shouldRetryFn": {},
395
- "maxRetryDelay": {
396
- "type": "number"
397
- },
398
- "retryDelayMultiplier": {
399
- "type": "number"
400
- },
401
- "totalTimeout": {
402
- "type": "number"
403
- }
404
- }
405
- }
143
+ "Import": "lib/services/pubsub.service:default",
144
+ "Schema": {
145
+ "$schema": "http://json-schema.org/draft-07/schema#",
146
+ "additionalProperties": false,
147
+ "definitions": {
148
+ "BackoffSettings": {
149
+ "additionalProperties": false,
150
+ "description": "Parameters to the exponential backoff algorithm for retrying.",
151
+ "properties": {
152
+ "initialRetryDelayMillis": {
153
+ "type": "number"
154
+ },
155
+ "initialRpcTimeoutMillis": {
156
+ "type": "number"
157
+ },
158
+ "maxRetries": {
159
+ "type": "number"
160
+ },
161
+ "maxRetryDelayMillis": {
162
+ "type": "number"
163
+ },
164
+ "maxRpcTimeoutMillis": {
165
+ "type": "number"
166
+ },
167
+ "retryDelayMultiplier": {
168
+ "type": "number"
169
+ },
170
+ "rpcTimeoutMultiplier": {
171
+ "type": "number"
172
+ },
173
+ "totalTimeoutMillis": {
174
+ "type": "number"
406
175
  }
407
176
  },
408
- "flowControl": {
409
- "type": "object",
410
- "properties": {
411
- "allowExcessMessages": {
412
- "type": "boolean"
413
- },
414
- "maxBytes": {
415
- "type": "number"
416
- },
417
- "maxMessages": {
418
- "type": "number"
419
- },
420
- "maxExtensionMinutes": {
421
- "type": "number"
422
- },
423
- "maxExtension": {
424
- "type": "number",
425
- "deprecated": "Use maxExtensionMinutes."
426
- }
177
+ "required": [
178
+ "initialRetryDelayMillis",
179
+ "maxRetryDelayMillis",
180
+ "retryDelayMultiplier"
181
+ ],
182
+ "type": "object"
183
+ },
184
+ "BundleOptions": {
185
+ "additionalProperties": false,
186
+ "description": "Parameter to configure bundling behavior.",
187
+ "properties": {
188
+ "delayThreshold": {
189
+ "type": "number"
190
+ },
191
+ "elementCountLimit": {
192
+ "type": "number"
193
+ },
194
+ "elementCountThreshold": {
195
+ "type": "number"
196
+ },
197
+ "requestByteLimit": {
198
+ "type": "number"
199
+ },
200
+ "requestByteThreshold": {
201
+ "type": "number"
427
202
  }
428
203
  },
429
- "name": {
430
- "type": [
431
- "string",
432
- "null"
433
- ],
434
- "description": "Subscription name"
204
+ "type": "object"
205
+ },
206
+ "CallOptions": {
207
+ "additionalProperties": false,
208
+ "properties": {
209
+ "apiName": {
210
+ "type": "string"
211
+ },
212
+ "autoPaginate": {
213
+ "default": false,
214
+ "type": "boolean"
215
+ },
216
+ "bundleOptions": {
217
+ "$ref": "#/definitions/BundleOptions"
218
+ },
219
+ "isBundling": {
220
+ "default": false,
221
+ "type": "boolean"
222
+ },
223
+ "longrunning": {
224
+ "$ref": "#/definitions/BackoffSettings"
225
+ },
226
+ "maxResults": {
227
+ "type": "number"
228
+ },
229
+ "maxRetries": {
230
+ "type": "number"
231
+ },
232
+ "otherArgs": {
233
+ "$ref": "#/definitions/subscriptionOptions%263%24gaxOpts%24otherArgs"
234
+ },
235
+ "retry": {
236
+ "$ref": "#/definitions/Partial%3CRetryOptions%3E"
237
+ },
238
+ "retryRequestOptions": {
239
+ "$ref": "#/definitions/RetryRequestOptions"
240
+ },
241
+ "timeout": {
242
+ "type": "number"
243
+ }
435
244
  },
436
- "topic": {
437
- "type": [
438
- "string",
439
- "null"
440
- ],
441
- "description": "Subscription topic"
245
+ "type": "object"
246
+ },
247
+ "FlowControlOptions": {
248
+ "additionalProperties": false,
249
+ "properties": {
250
+ "allowExcessMessages": {
251
+ "default": false,
252
+ "type": "boolean"
253
+ },
254
+ "maxBytes": {
255
+ "type": "number"
256
+ },
257
+ "maxMessages": {
258
+ "type": "number"
259
+ }
442
260
  },
443
- "pushConfig": {
444
- "anyOf": [
445
- {
446
- "type": "object",
447
- "properties": {
448
- "pushEndpoint": {
449
- "type": [
450
- "string",
451
- "null"
452
- ],
453
- "description": "PushConfig pushEndpoint"
454
- },
455
- "attributes": {
456
- "anyOf": [
457
- {
458
- "type": "object",
459
- "additionalProperties": {
460
- "type": "string"
461
- }
462
- },
463
- {
464
- "type": "null"
465
- }
466
- ],
467
- "description": "PushConfig attributes"
468
- },
469
- "oidcToken": {
470
- "anyOf": [
471
- {
472
- "type": "object",
473
- "properties": {
474
- "serviceAccountEmail": {
475
- "type": [
476
- "string",
477
- "null"
478
- ],
479
- "description": "OidcToken serviceAccountEmail"
480
- },
481
- "audience": {
482
- "type": [
483
- "string",
484
- "null"
485
- ],
486
- "description": "OidcToken audience"
487
- }
488
- },
489
- "description": "Properties of an OidcToken."
490
- },
491
- {
492
- "type": "null"
493
- }
494
- ],
495
- "description": "PushConfig oidcToken"
496
- },
497
- "pubsubWrapper": {
498
- "anyOf": [
499
- {
500
- "type": "object",
501
- "description": "Properties of a PubsubWrapper."
502
- },
503
- {
504
- "type": "null"
505
- }
506
- ],
507
- "description": "PushConfig pubsubWrapper"
508
- },
509
- "noWrapper": {
510
- "anyOf": [
511
- {
512
- "type": "object",
513
- "properties": {
514
- "writeMetadata": {
515
- "type": [
516
- "boolean",
517
- "null"
518
- ],
519
- "description": "NoWrapper writeMetadata"
520
- }
521
- },
522
- "description": "Properties of a NoWrapper."
523
- },
524
- {
525
- "type": "null"
526
- }
527
- ],
528
- "description": "PushConfig noWrapper"
529
- }
530
- },
531
- "description": "Properties of a PushConfig."
532
- },
533
- {
534
- "type": "null"
535
- }
536
- ],
537
- "description": "Subscription pushConfig"
261
+ "type": "object"
262
+ },
263
+ "IAIInference": {
264
+ "additionalProperties": false,
265
+ "description": "Properties of a AIInference.",
266
+ "properties": {
267
+ "endpoint": {
268
+ "description": "AIInference endpoint",
269
+ "type": "string"
270
+ },
271
+ "serviceAccountEmail": {
272
+ "description": "AIInference serviceAccountEmail",
273
+ "type": "string"
274
+ },
275
+ "unstructuredInference": {
276
+ "$ref": "#/definitions/IUnstructuredInference",
277
+ "description": "AIInference unstructuredInference"
278
+ }
538
279
  },
539
- "bigqueryConfig": {
540
- "anyOf": [
541
- {
542
- "type": "object",
543
- "properties": {
544
- "table": {
545
- "type": [
546
- "string",
547
- "null"
548
- ],
549
- "description": "BigQueryConfig table"
550
- },
551
- "useTopicSchema": {
552
- "type": [
553
- "boolean",
554
- "null"
555
- ],
556
- "description": "BigQueryConfig useTopicSchema"
557
- },
558
- "writeMetadata": {
559
- "type": [
560
- "boolean",
561
- "null"
562
- ],
563
- "description": "BigQueryConfig writeMetadata"
564
- },
565
- "dropUnknownFields": {
566
- "type": [
567
- "boolean",
568
- "null"
569
- ],
570
- "description": "BigQueryConfig dropUnknownFields"
571
- },
572
- "state": {
573
- "anyOf": [
574
- {
575
- "$ref": "#/definitions/google.pubsub.v1.BigQueryConfig.State"
576
- },
577
- {
578
- "type": "string",
579
- "const": "STATE_UNSPECIFIED"
580
- },
581
- {
582
- "type": "string",
583
- "const": "ACTIVE"
584
- },
585
- {
586
- "type": "string",
587
- "const": "PERMISSION_DENIED"
588
- },
589
- {
590
- "type": "string",
591
- "const": "NOT_FOUND"
592
- },
593
- {
594
- "type": "string",
595
- "const": "SCHEMA_MISMATCH"
596
- },
597
- {
598
- "type": "string",
599
- "const": "IN_TRANSIT_LOCATION_RESTRICTION"
600
- },
601
- {
602
- "type": "null"
603
- }
604
- ],
605
- "description": "BigQueryConfig state"
606
- },
607
- "useTableSchema": {
608
- "type": [
609
- "boolean",
610
- "null"
611
- ],
612
- "description": "BigQueryConfig useTableSchema"
613
- },
614
- "serviceAccountEmail": {
615
- "type": [
616
- "string",
617
- "null"
618
- ],
619
- "description": "BigQueryConfig serviceAccountEmail"
620
- }
621
- },
622
- "description": "Properties of a BigQueryConfig."
623
- },
624
- {
625
- "type": "null"
626
- }
627
- ],
628
- "description": "Subscription bigqueryConfig"
280
+ "type": "object"
281
+ },
282
+ "IAnalyticsHubSubscriptionInfo": {
283
+ "additionalProperties": false,
284
+ "description": "Properties of an AnalyticsHubSubscriptionInfo.",
285
+ "properties": {
286
+ "listing": {
287
+ "description": "AnalyticsHubSubscriptionInfo listing",
288
+ "type": "string"
289
+ },
290
+ "subscription": {
291
+ "description": "AnalyticsHubSubscriptionInfo subscription",
292
+ "type": "string"
293
+ }
629
294
  },
630
- "cloudStorageConfig": {
631
- "anyOf": [
632
- {
633
- "type": "object",
634
- "properties": {
635
- "bucket": {
636
- "type": [
637
- "string",
638
- "null"
639
- ],
640
- "description": "CloudStorageConfig bucket"
641
- },
642
- "filenamePrefix": {
643
- "type": [
644
- "string",
645
- "null"
646
- ],
647
- "description": "CloudStorageConfig filenamePrefix"
648
- },
649
- "filenameSuffix": {
650
- "type": [
651
- "string",
652
- "null"
653
- ],
654
- "description": "CloudStorageConfig filenameSuffix"
655
- },
656
- "filenameDatetimeFormat": {
657
- "type": [
658
- "string",
659
- "null"
660
- ],
661
- "description": "CloudStorageConfig filenameDatetimeFormat"
662
- },
663
- "textConfig": {
664
- "anyOf": [
665
- {
666
- "type": "object",
667
- "description": "Properties of a TextConfig."
668
- },
669
- {
670
- "type": "null"
671
- }
672
- ],
673
- "description": "CloudStorageConfig textConfig"
674
- },
675
- "avroConfig": {
676
- "anyOf": [
677
- {
678
- "type": "object",
679
- "properties": {
680
- "writeMetadata": {
681
- "type": [
682
- "boolean",
683
- "null"
684
- ],
685
- "description": "AvroConfig writeMetadata"
686
- }
687
- },
688
- "description": "Properties of an AvroConfig."
689
- },
690
- {
691
- "type": "null"
692
- }
693
- ],
694
- "description": "CloudStorageConfig avroConfig"
695
- },
696
- "maxDuration": {
697
- "anyOf": [
698
- {
699
- "type": "object",
700
- "properties": {
701
- "seconds": {
702
- "anyOf": [
703
- {
704
- "type": "number"
705
- },
706
- {
707
- "type": "object",
708
- "properties": {
709
- "high": {
710
- "type": "number",
711
- "description": "The high 32 bits as a signed value."
712
- },
713
- "low": {
714
- "type": "number",
715
- "description": "The low 32 bits as a signed value."
716
- },
717
- "unsigned": {
718
- "type": "boolean",
719
- "description": "Whether unsigned or not."
720
- }
721
- },
722
- "required": [
723
- "high",
724
- "low",
725
- "unsigned"
726
- ]
727
- },
728
- {
729
- "type": "string"
730
- },
731
- {
732
- "type": "null"
733
- }
734
- ],
735
- "description": "Duration seconds"
736
- },
737
- "nanos": {
738
- "type": [
739
- "number",
740
- "null"
741
- ],
742
- "description": "Duration nanos"
743
- }
744
- },
745
- "description": "Properties of a Duration."
746
- },
747
- {
748
- "type": "null"
749
- }
750
- ],
751
- "description": "CloudStorageConfig maxDuration"
752
- },
753
- "maxBytes": {
754
- "anyOf": [
755
- {
756
- "type": "number"
757
- },
758
- {
759
- "type": "object",
760
- "properties": {
761
- "high": {
762
- "type": "number",
763
- "description": "The high 32 bits as a signed value."
764
- },
765
- "low": {
766
- "type": "number",
767
- "description": "The low 32 bits as a signed value."
768
- },
769
- "unsigned": {
770
- "type": "boolean",
771
- "description": "Whether unsigned or not."
772
- }
773
- },
774
- "required": [
775
- "high",
776
- "low",
777
- "unsigned"
778
- ]
779
- },
780
- {
781
- "type": "string"
782
- },
783
- {
784
- "type": "null"
785
- }
786
- ],
787
- "description": "CloudStorageConfig maxBytes"
788
- },
789
- "state": {
790
- "anyOf": [
791
- {
792
- "$ref": "#/definitions/google.pubsub.v1.CloudStorageConfig.State"
793
- },
794
- {
795
- "type": "string",
796
- "const": "STATE_UNSPECIFIED"
797
- },
798
- {
799
- "type": "string",
800
- "const": "ACTIVE"
801
- },
802
- {
803
- "type": "string",
804
- "const": "PERMISSION_DENIED"
805
- },
806
- {
807
- "type": "string",
808
- "const": "NOT_FOUND"
809
- },
810
- {
811
- "type": "string",
812
- "const": "IN_TRANSIT_LOCATION_RESTRICTION"
813
- },
814
- {
815
- "type": "null"
816
- }
817
- ],
818
- "description": "CloudStorageConfig state"
819
- },
820
- "serviceAccountEmail": {
821
- "type": [
822
- "string",
823
- "null"
824
- ],
825
- "description": "CloudStorageConfig serviceAccountEmail"
826
- }
827
- },
828
- "description": "Properties of a CloudStorageConfig."
829
- },
830
- {
831
- "type": "null"
832
- }
833
- ],
834
- "description": "Subscription cloudStorageConfig"
295
+ "type": "object"
296
+ },
297
+ "IAvroConfig": {
298
+ "additionalProperties": false,
299
+ "description": "Properties of an AvroConfig.",
300
+ "properties": {
301
+ "useTopicSchema": {
302
+ "default": false,
303
+ "description": "AvroConfig useTopicSchema",
304
+ "type": "boolean"
305
+ },
306
+ "writeMetadata": {
307
+ "default": false,
308
+ "description": "AvroConfig writeMetadata",
309
+ "type": "boolean"
310
+ }
835
311
  },
836
- "ackDeadlineSeconds": {
837
- "type": [
838
- "number",
839
- "null"
840
- ],
841
- "description": "Subscription ackDeadlineSeconds"
312
+ "type": "object"
313
+ },
314
+ "IBigQueryConfig": {
315
+ "additionalProperties": false,
316
+ "description": "Properties of a BigQueryConfig.",
317
+ "properties": {
318
+ "dropUnknownFields": {
319
+ "default": false,
320
+ "description": "BigQueryConfig dropUnknownFields",
321
+ "type": "boolean"
322
+ },
323
+ "serviceAccountEmail": {
324
+ "description": "BigQueryConfig serviceAccountEmail",
325
+ "type": "string"
326
+ },
327
+ "state": {
328
+ "description": "BigQueryConfig state",
329
+ "enum": [
330
+ 0,
331
+ 1,
332
+ 2,
333
+ 3,
334
+ 4,
335
+ 5,
336
+ 6,
337
+ "STATE_UNSPECIFIED",
338
+ "ACTIVE",
339
+ "PERMISSION_DENIED",
340
+ "NOT_FOUND",
341
+ "SCHEMA_MISMATCH",
342
+ "IN_TRANSIT_LOCATION_RESTRICTION",
343
+ "VERTEX_AI_LOCATION_RESTRICTION"
344
+ ],
345
+ "type": [
346
+ "number",
347
+ "string"
348
+ ]
349
+ },
350
+ "table": {
351
+ "description": "BigQueryConfig table",
352
+ "type": "string"
353
+ },
354
+ "useTableSchema": {
355
+ "default": false,
356
+ "description": "BigQueryConfig useTableSchema",
357
+ "type": "boolean"
358
+ },
359
+ "useTopicSchema": {
360
+ "default": false,
361
+ "description": "BigQueryConfig useTopicSchema",
362
+ "type": "boolean"
363
+ },
364
+ "writeMetadata": {
365
+ "default": false,
366
+ "description": "BigQueryConfig writeMetadata",
367
+ "type": "boolean"
368
+ }
842
369
  },
843
- "retainAckedMessages": {
844
- "type": [
845
- "boolean",
846
- "null"
847
- ],
848
- "description": "Subscription retainAckedMessages"
370
+ "type": "object"
371
+ },
372
+ "IBigtableConfig": {
373
+ "additionalProperties": false,
374
+ "description": "Properties of a BigtableConfig.",
375
+ "properties": {
376
+ "appProfileId": {
377
+ "description": "BigtableConfig appProfileId",
378
+ "type": "string"
379
+ },
380
+ "serviceAccountEmail": {
381
+ "description": "BigtableConfig serviceAccountEmail",
382
+ "type": "string"
383
+ },
384
+ "state": {
385
+ "description": "BigtableConfig state",
386
+ "enum": [
387
+ "STATE_UNSPECIFIED",
388
+ "ACTIVE",
389
+ "PERMISSION_DENIED",
390
+ "NOT_FOUND",
391
+ "SCHEMA_MISMATCH",
392
+ "IN_TRANSIT_LOCATION_RESTRICTION",
393
+ "VERTEX_AI_LOCATION_RESTRICTION",
394
+ 0,
395
+ 1,
396
+ 2,
397
+ 3,
398
+ 4,
399
+ 5,
400
+ 6,
401
+ 7,
402
+ "APP_PROFILE_MISCONFIGURED"
403
+ ],
404
+ "type": [
405
+ "string",
406
+ "number"
407
+ ]
408
+ },
409
+ "table": {
410
+ "description": "BigtableConfig table",
411
+ "type": "string"
412
+ },
413
+ "writeMetadata": {
414
+ "default": false,
415
+ "description": "BigtableConfig writeMetadata",
416
+ "type": "boolean"
417
+ }
849
418
  },
850
- "labels": {
851
- "anyOf": [
852
- {
853
- "type": "object",
854
- "additionalProperties": {
419
+ "type": "object"
420
+ },
421
+ "ICloudStorageConfig": {
422
+ "additionalProperties": false,
423
+ "description": "Properties of a CloudStorageConfig.",
424
+ "properties": {
425
+ "avroConfig": {
426
+ "$ref": "#/definitions/IAvroConfig",
427
+ "description": "CloudStorageConfig avroConfig"
428
+ },
429
+ "bucket": {
430
+ "description": "CloudStorageConfig bucket",
431
+ "type": "string"
432
+ },
433
+ "filenameDatetimeFormat": {
434
+ "description": "CloudStorageConfig filenameDatetimeFormat",
435
+ "type": "string"
436
+ },
437
+ "filenamePrefix": {
438
+ "description": "CloudStorageConfig filenamePrefix",
439
+ "type": "string"
440
+ },
441
+ "filenameSuffix": {
442
+ "description": "CloudStorageConfig filenameSuffix",
443
+ "type": "string"
444
+ },
445
+ "maxBytes": {
446
+ "anyOf": [
447
+ {
855
448
  "type": "string"
449
+ },
450
+ {
451
+ "type": "number"
452
+ },
453
+ {
454
+ "$ref": "#/definitions/Long"
856
455
  }
857
- },
858
- {
859
- "type": "null"
860
- }
861
- ],
862
- "description": "Subscription labels"
456
+ ],
457
+ "description": "CloudStorageConfig maxBytes"
458
+ },
459
+ "maxDuration": {
460
+ "$ref": "#/definitions/IDuration",
461
+ "description": "CloudStorageConfig maxDuration"
462
+ },
463
+ "maxMessages": {
464
+ "anyOf": [
465
+ {
466
+ "type": "string"
467
+ },
468
+ {
469
+ "type": "number"
470
+ },
471
+ {
472
+ "$ref": "#/definitions/Long"
473
+ }
474
+ ],
475
+ "description": "CloudStorageConfig maxMessages"
476
+ },
477
+ "serviceAccountEmail": {
478
+ "description": "CloudStorageConfig serviceAccountEmail",
479
+ "type": "string"
480
+ },
481
+ "state": {
482
+ "description": "CloudStorageConfig state",
483
+ "enum": [
484
+ "STATE_UNSPECIFIED",
485
+ "ACTIVE",
486
+ "PERMISSION_DENIED",
487
+ "NOT_FOUND",
488
+ "SCHEMA_MISMATCH",
489
+ "IN_TRANSIT_LOCATION_RESTRICTION",
490
+ "VERTEX_AI_LOCATION_RESTRICTION",
491
+ 0,
492
+ 1,
493
+ 2,
494
+ 3,
495
+ 4,
496
+ 5,
497
+ 6
498
+ ],
499
+ "type": [
500
+ "string",
501
+ "number"
502
+ ]
503
+ },
504
+ "textConfig": {
505
+ "$ref": "#/definitions/ITextConfig",
506
+ "description": "CloudStorageConfig textConfig"
507
+ }
863
508
  },
864
- "enableMessageOrdering": {
865
- "type": [
866
- "boolean",
867
- "null"
868
- ],
869
- "description": "Subscription enableMessageOrdering"
509
+ "type": "object"
510
+ },
511
+ "IDeadLetterPolicy": {
512
+ "additionalProperties": false,
513
+ "description": "Properties of a DeadLetterPolicy.",
514
+ "properties": {
515
+ "deadLetterTopic": {
516
+ "description": "DeadLetterPolicy deadLetterTopic",
517
+ "type": "string"
518
+ },
519
+ "maxDeliveryAttempts": {
520
+ "description": "DeadLetterPolicy maxDeliveryAttempts",
521
+ "type": "number"
522
+ }
870
523
  },
871
- "expirationPolicy": {
872
- "anyOf": [
873
- {
874
- "type": "object",
875
- "properties": {
876
- "ttl": {
877
- "anyOf": [
878
- {
879
- "type": "object",
880
- "properties": {
881
- "seconds": {
882
- "anyOf": [
883
- {
884
- "type": "number"
885
- },
886
- {
887
- "type": "object",
888
- "properties": {
889
- "high": {
890
- "type": "number",
891
- "description": "The high 32 bits as a signed value."
892
- },
893
- "low": {
894
- "type": "number",
895
- "description": "The low 32 bits as a signed value."
896
- },
897
- "unsigned": {
898
- "type": "boolean",
899
- "description": "Whether unsigned or not."
900
- }
901
- },
902
- "required": [
903
- "high",
904
- "low",
905
- "unsigned"
906
- ]
907
- },
908
- {
909
- "type": "string"
910
- },
911
- {
912
- "type": "null"
913
- }
914
- ],
915
- "description": "Duration seconds"
916
- },
917
- "nanos": {
918
- "type": [
919
- "number",
920
- "null"
921
- ],
922
- "description": "Duration nanos"
923
- }
924
- },
925
- "description": "Properties of a Duration."
926
- },
927
- {
928
- "type": "null"
929
- }
930
- ],
931
- "description": "ExpirationPolicy ttl"
932
- }
524
+ "type": "object"
525
+ },
526
+ "IDuration": {
527
+ "additionalProperties": false,
528
+ "description": "Properties of a Duration.",
529
+ "properties": {
530
+ "nanos": {
531
+ "description": "Duration nanos",
532
+ "type": "number"
533
+ },
534
+ "seconds": {
535
+ "anyOf": [
536
+ {
537
+ "type": "string"
933
538
  },
934
- "description": "Properties of an ExpirationPolicy."
935
- },
936
- {
937
- "type": "null"
938
- }
939
- ],
940
- "description": "Subscription expirationPolicy"
539
+ {
540
+ "type": "number"
541
+ },
542
+ {
543
+ "$ref": "#/definitions/Long"
544
+ }
545
+ ],
546
+ "description": "Duration seconds"
547
+ }
941
548
  },
942
- "filter": {
943
- "type": [
944
- "string",
945
- "null"
946
- ],
947
- "description": "Subscription filter"
549
+ "type": "object"
550
+ },
551
+ "IExpirationPolicy": {
552
+ "additionalProperties": false,
553
+ "description": "Properties of an ExpirationPolicy.",
554
+ "properties": {
555
+ "ttl": {
556
+ "$ref": "#/definitions/IDuration",
557
+ "description": "ExpirationPolicy ttl"
558
+ }
948
559
  },
949
- "deadLetterPolicy": {
950
- "anyOf": [
951
- {
952
- "type": "object",
953
- "properties": {
954
- "deadLetterTopic": {
955
- "type": [
956
- "string",
957
- "null"
958
- ],
959
- "description": "DeadLetterPolicy deadLetterTopic"
960
- },
961
- "maxDeliveryAttempts": {
962
- "type": [
963
- "number",
964
- "null"
965
- ],
966
- "description": "DeadLetterPolicy maxDeliveryAttempts"
967
- }
968
- },
969
- "description": "Properties of a DeadLetterPolicy."
970
- },
971
- {
972
- "type": "null"
973
- }
974
- ],
975
- "description": "Subscription deadLetterPolicy"
560
+ "type": "object"
561
+ },
562
+ "IJavaScriptUDF": {
563
+ "additionalProperties": false,
564
+ "description": "Properties of a JavaScriptUDF.",
565
+ "properties": {
566
+ "code": {
567
+ "description": "JavaScriptUDF code",
568
+ "type": "string"
569
+ },
570
+ "functionName": {
571
+ "description": "JavaScriptUDF functionName",
572
+ "type": "string"
573
+ }
976
574
  },
977
- "retryPolicy": {
978
- "anyOf": [
979
- {
980
- "type": "object",
981
- "properties": {
982
- "minimumBackoff": {
983
- "anyOf": [
984
- {
985
- "type": "object",
986
- "properties": {
987
- "seconds": {
988
- "anyOf": [
989
- {
990
- "type": "number"
991
- },
992
- {
993
- "type": "object",
994
- "properties": {
995
- "high": {
996
- "type": "number",
997
- "description": "The high 32 bits as a signed value."
998
- },
999
- "low": {
1000
- "type": "number",
1001
- "description": "The low 32 bits as a signed value."
1002
- },
1003
- "unsigned": {
1004
- "type": "boolean",
1005
- "description": "Whether unsigned or not."
1006
- }
1007
- },
1008
- "required": [
1009
- "high",
1010
- "low",
1011
- "unsigned"
1012
- ]
1013
- },
1014
- {
1015
- "type": "string"
1016
- },
1017
- {
1018
- "type": "null"
1019
- }
1020
- ],
1021
- "description": "Duration seconds"
1022
- },
1023
- "nanos": {
1024
- "type": [
1025
- "number",
1026
- "null"
1027
- ],
1028
- "description": "Duration nanos"
1029
- }
1030
- },
1031
- "description": "Properties of a Duration."
1032
- },
1033
- {
1034
- "type": "null"
1035
- }
1036
- ],
1037
- "description": "RetryPolicy minimumBackoff"
1038
- },
1039
- "maximumBackoff": {
1040
- "anyOf": [
1041
- {
1042
- "type": "object",
1043
- "properties": {
1044
- "seconds": {
1045
- "anyOf": [
1046
- {
1047
- "type": "number"
1048
- },
1049
- {
1050
- "type": "object",
1051
- "properties": {
1052
- "high": {
1053
- "type": "number",
1054
- "description": "The high 32 bits as a signed value."
1055
- },
1056
- "low": {
1057
- "type": "number",
1058
- "description": "The low 32 bits as a signed value."
1059
- },
1060
- "unsigned": {
1061
- "type": "boolean",
1062
- "description": "Whether unsigned or not."
1063
- }
1064
- },
1065
- "required": [
1066
- "high",
1067
- "low",
1068
- "unsigned"
1069
- ]
1070
- },
1071
- {
1072
- "type": "string"
1073
- },
1074
- {
1075
- "type": "null"
1076
- }
1077
- ],
1078
- "description": "Duration seconds"
1079
- },
1080
- "nanos": {
1081
- "type": [
1082
- "number",
1083
- "null"
1084
- ],
1085
- "description": "Duration nanos"
1086
- }
1087
- },
1088
- "description": "Properties of a Duration."
1089
- },
1090
- {
1091
- "type": "null"
1092
- }
1093
- ],
1094
- "description": "RetryPolicy maximumBackoff"
1095
- }
1096
- },
1097
- "description": "Properties of a RetryPolicy."
575
+ "type": "object"
576
+ },
577
+ "IListValue": {
578
+ "additionalProperties": false,
579
+ "description": "Properties of a ListValue.",
580
+ "properties": {
581
+ "values": {
582
+ "description": "ListValue values",
583
+ "items": {
584
+ "$ref": "#/definitions/IValue"
1098
585
  },
1099
- {
1100
- "type": "null"
1101
- }
1102
- ],
1103
- "description": "Subscription retryPolicy"
586
+ "type": "array"
587
+ }
1104
588
  },
1105
- "detached": {
1106
- "type": [
1107
- "boolean",
1108
- "null"
1109
- ],
1110
- "description": "Subscription detached"
589
+ "type": "object"
590
+ },
591
+ "IMessageTransform": {
592
+ "additionalProperties": false,
593
+ "description": "Properties of a MessageTransform.",
594
+ "properties": {
595
+ "aiInference": {
596
+ "$ref": "#/definitions/IAIInference",
597
+ "description": "MessageTransform aiInference"
598
+ },
599
+ "disabled": {
600
+ "default": false,
601
+ "description": "MessageTransform disabled",
602
+ "type": "boolean"
603
+ },
604
+ "enabled": {
605
+ "default": false,
606
+ "description": "MessageTransform enabled",
607
+ "type": "boolean"
608
+ },
609
+ "javascriptUdf": {
610
+ "$ref": "#/definitions/IJavaScriptUDF",
611
+ "description": "MessageTransform javascriptUdf"
612
+ }
1111
613
  },
1112
- "enableExactlyOnceDelivery": {
1113
- "type": [
1114
- "boolean",
1115
- "null"
1116
- ],
1117
- "description": "Subscription enableExactlyOnceDelivery"
614
+ "type": "object"
615
+ },
616
+ "INoWrapper": {
617
+ "additionalProperties": false,
618
+ "description": "Properties of a NoWrapper.",
619
+ "properties": {
620
+ "writeMetadata": {
621
+ "default": false,
622
+ "description": "NoWrapper writeMetadata",
623
+ "type": "boolean"
624
+ }
1118
625
  },
1119
- "topicMessageRetentionDuration": {
1120
- "anyOf": [
1121
- {
1122
- "type": "object",
1123
- "properties": {
1124
- "seconds": {
1125
- "anyOf": [
1126
- {
1127
- "type": "number"
1128
- },
1129
- {
1130
- "type": "object",
1131
- "properties": {
1132
- "high": {
1133
- "type": "number",
1134
- "description": "The high 32 bits as a signed value."
1135
- },
1136
- "low": {
1137
- "type": "number",
1138
- "description": "The low 32 bits as a signed value."
1139
- },
1140
- "unsigned": {
1141
- "type": "boolean",
1142
- "description": "Whether unsigned or not."
1143
- }
1144
- },
1145
- "required": [
1146
- "high",
1147
- "low",
1148
- "unsigned"
1149
- ]
1150
- },
1151
- {
1152
- "type": "string"
1153
- },
1154
- {
1155
- "type": "null"
1156
- }
1157
- ],
1158
- "description": "Duration seconds"
1159
- },
1160
- "nanos": {
1161
- "type": [
1162
- "number",
1163
- "null"
1164
- ],
1165
- "description": "Duration nanos"
1166
- }
1167
- },
1168
- "description": "Properties of a Duration."
1169
- },
1170
- {
1171
- "type": "null"
1172
- }
1173
- ],
1174
- "description": "Subscription topicMessageRetentionDuration"
626
+ "type": "object"
627
+ },
628
+ "IOidcToken": {
629
+ "additionalProperties": false,
630
+ "description": "Properties of an OidcToken.",
631
+ "properties": {
632
+ "audience": {
633
+ "description": "OidcToken audience",
634
+ "type": "string"
635
+ },
636
+ "serviceAccountEmail": {
637
+ "description": "OidcToken serviceAccountEmail",
638
+ "type": "string"
639
+ }
1175
640
  },
1176
- "state": {
1177
- "anyOf": [
1178
- {
1179
- "$ref": "#/definitions/google.pubsub.v1.Subscription.State"
1180
- },
1181
- {
1182
- "type": "string",
1183
- "const": "STATE_UNSPECIFIED"
1184
- },
1185
- {
1186
- "type": "string",
1187
- "const": "ACTIVE"
1188
- },
1189
- {
1190
- "type": "string",
1191
- "const": "RESOURCE_ERROR"
1192
- },
1193
- {
1194
- "type": "null"
1195
- }
1196
- ],
1197
- "description": "Subscription state"
641
+ "type": "object"
642
+ },
643
+ "IPubsubWrapper": {
644
+ "additionalProperties": false,
645
+ "description": "Properties of a PubsubWrapper.",
646
+ "type": "object"
647
+ },
648
+ "IPushConfig": {
649
+ "additionalProperties": false,
650
+ "description": "Properties of a PushConfig.",
651
+ "properties": {
652
+ "attributes": {
653
+ "$ref": "#/definitions/subscriptionOptions%262%24pushConfig%24attributes",
654
+ "description": "PushConfig attributes"
655
+ },
656
+ "noWrapper": {
657
+ "$ref": "#/definitions/INoWrapper",
658
+ "description": "PushConfig noWrapper"
659
+ },
660
+ "oidcToken": {
661
+ "$ref": "#/definitions/IOidcToken",
662
+ "description": "PushConfig oidcToken"
663
+ },
664
+ "pubsubWrapper": {
665
+ "$ref": "#/definitions/IPubsubWrapper",
666
+ "description": "PushConfig pubsubWrapper"
667
+ },
668
+ "pushEndpoint": {
669
+ "description": "PushConfig pushEndpoint",
670
+ "type": "string"
671
+ }
1198
672
  },
1199
- "messageRetentionDuration": {
1200
- "anyOf": [
1201
- {
1202
- "type": "object",
1203
- "properties": {
1204
- "seconds": {
1205
- "anyOf": [
1206
- {
1207
- "type": "number"
1208
- },
1209
- {
1210
- "type": "object",
1211
- "properties": {
1212
- "high": {
1213
- "type": "number",
1214
- "description": "The high 32 bits as a signed value."
1215
- },
1216
- "low": {
1217
- "type": "number",
1218
- "description": "The low 32 bits as a signed value."
1219
- },
1220
- "unsigned": {
1221
- "type": "boolean",
1222
- "description": "Whether unsigned or not."
1223
- }
1224
- },
1225
- "required": [
1226
- "high",
1227
- "low",
1228
- "unsigned"
1229
- ]
1230
- },
1231
- {
1232
- "type": "string"
1233
- },
1234
- {
1235
- "type": "null"
1236
- }
1237
- ],
1238
- "description": "Duration seconds"
1239
- },
1240
- "nanos": {
1241
- "type": [
1242
- "number",
1243
- "null"
1244
- ],
1245
- "description": "Duration nanos"
1246
- }
1247
- },
1248
- "description": "Properties of a Duration."
1249
- },
1250
- {
1251
- "type": "number"
1252
- }
1253
- ]
673
+ "type": "object"
674
+ },
675
+ "IRetryPolicy": {
676
+ "additionalProperties": false,
677
+ "description": "Properties of a RetryPolicy.",
678
+ "properties": {
679
+ "maximumBackoff": {
680
+ "$ref": "#/definitions/IDuration",
681
+ "description": "RetryPolicy maximumBackoff"
682
+ },
683
+ "minimumBackoff": {
684
+ "$ref": "#/definitions/IDuration",
685
+ "description": "RetryPolicy minimumBackoff"
686
+ }
1254
687
  },
1255
- "pushEndpoint": {
1256
- "type": "string"
688
+ "type": "object"
689
+ },
690
+ "IStruct": {
691
+ "additionalProperties": false,
692
+ "description": "Properties of a Struct.",
693
+ "properties": {
694
+ "fields": {
695
+ "$ref": "#/definitions/subscriptionOptions%262%24messageTransforms%5B%5D%24aiInference%24unstructuredInference%24parameters%24fields",
696
+ "description": "Struct fields"
697
+ }
1257
698
  },
1258
- "oidcToken": {
1259
- "$ref": "#/definitions/OidcToken"
1260
- }
1261
- }
1262
- },
1263
- "Partial<class-657338214-822-3488-657338214-0-17392>": {
1264
- "type": "object",
1265
- "properties": {
1266
- "retryCodes": {
1267
- "type": "array",
1268
- "items": {
699
+ "type": "object"
700
+ },
701
+ "ITextConfig": {
702
+ "additionalProperties": false,
703
+ "description": "Properties of a TextConfig.",
704
+ "type": "object"
705
+ },
706
+ "IUnstructuredInference": {
707
+ "additionalProperties": false,
708
+ "description": "Properties of an UnstructuredInference.",
709
+ "properties": {
710
+ "parameters": {
711
+ "$ref": "#/definitions/IStruct",
712
+ "description": "UnstructuredInference parameters"
713
+ }
714
+ },
715
+ "type": "object"
716
+ },
717
+ "IValue": {
718
+ "additionalProperties": false,
719
+ "description": "Properties of a Value.",
720
+ "properties": {
721
+ "boolValue": {
722
+ "default": false,
723
+ "description": "Value boolValue",
724
+ "type": "boolean"
725
+ },
726
+ "listValue": {
727
+ "$ref": "#/definitions/IListValue",
728
+ "description": "Value listValue"
729
+ },
730
+ "nullValue": {
731
+ "description": "Value nullValue",
732
+ "enum": [
733
+ 0,
734
+ "NULL_VALUE"
735
+ ],
736
+ "type": [
737
+ "number",
738
+ "string"
739
+ ]
740
+ },
741
+ "numberValue": {
742
+ "description": "Value numberValue",
1269
743
  "type": "number"
744
+ },
745
+ "stringValue": {
746
+ "description": "Value stringValue",
747
+ "type": "string"
748
+ },
749
+ "structValue": {
750
+ "$ref": "#/definitions/IStruct",
751
+ "description": "Value structValue"
1270
752
  }
1271
753
  },
1272
- "backoffSettings": {
1273
- "type": "object",
1274
- "properties": {
1275
- "maxRetries": {
1276
- "type": "number"
1277
- },
1278
- "initialRetryDelayMillis": {
1279
- "type": "number"
1280
- },
1281
- "retryDelayMultiplier": {
1282
- "type": "number"
1283
- },
1284
- "maxRetryDelayMillis": {
754
+ "type": "object"
755
+ },
756
+ "Long": {
757
+ "additionalProperties": false,
758
+ "properties": {
759
+ "high": {
760
+ "description": "The high 32 bits as a signed value.",
761
+ "type": "number"
762
+ },
763
+ "low": {
764
+ "description": "The low 32 bits as a signed value.",
765
+ "type": "number"
766
+ },
767
+ "unsigned": {
768
+ "default": false,
769
+ "description": "Whether unsigned or not.",
770
+ "type": "boolean"
771
+ }
772
+ },
773
+ "required": [
774
+ "high",
775
+ "low"
776
+ ],
777
+ "type": "object"
778
+ },
779
+ "Partial<RetryOptions>": {
780
+ "additionalProperties": false,
781
+ "description": "Make all properties in T optional",
782
+ "properties": {
783
+ "backoffSettings": {
784
+ "$ref": "#/definitions/BackoffSettings"
785
+ },
786
+ "retryCodes": {
787
+ "items": {
1285
788
  "type": "number"
1286
789
  },
1287
- "initialRpcTimeoutMillis": {
1288
- "type": [
1289
- "number",
1290
- "null"
1291
- ]
1292
- },
1293
- "maxRpcTimeoutMillis": {
1294
- "type": [
1295
- "number",
1296
- "null"
1297
- ]
1298
- },
1299
- "totalTimeoutMillis": {
1300
- "type": [
1301
- "number",
1302
- "null"
1303
- ]
1304
- },
1305
- "rpcTimeoutMultiplier": {
1306
- "type": [
1307
- "number",
1308
- "null"
1309
- ]
1310
- }
1311
- },
1312
- "required": [
1313
- "initialRetryDelayMillis",
1314
- "retryDelayMultiplier",
1315
- "maxRetryDelayMillis"
1316
- ]
790
+ "type": "array"
791
+ }
792
+ },
793
+ "type": "object"
794
+ },
795
+ "RetryRequestOptions": {
796
+ "additionalProperties": false,
797
+ "description": "Per-call configurable settings for working with retry-request\nSee the repo README for more about the parameters\nhttps://github.com/googleapis/retry-request\nWill be deprecated in a future release. Only relevant to server streaming calls",
798
+ "properties": {
799
+ "currentRetryAttempt": {
800
+ "type": "number"
801
+ },
802
+ "maxRetryDelay": {
803
+ "type": "number"
804
+ },
805
+ "noResponseRetries": {
806
+ "type": "number"
807
+ },
808
+ "objectMode": {
809
+ "default": false,
810
+ "type": "boolean"
811
+ },
812
+ "request": {},
813
+ "retries": {
814
+ "type": "number"
815
+ },
816
+ "retryDelayMultiplier": {
817
+ "type": "number"
818
+ },
819
+ "totalTimeout": {
820
+ "type": "number"
821
+ }
822
+ },
823
+ "type": "object"
824
+ },
825
+ "subscriptionOptions&2$labels": {
826
+ "additionalProperties": {
827
+ "type": "string"
828
+ },
829
+ "type": "object"
830
+ },
831
+ "subscriptionOptions&2$messageTransforms[]$aiInference$unstructuredInference$parameters$fields": {
832
+ "additionalProperties": {
833
+ "$ref": "#/definitions/IValue"
834
+ },
835
+ "type": "object"
836
+ },
837
+ "subscriptionOptions&2$messageTransforms[]$aiInference$unstructuredInference$parameters$fields$[key: string]$structValue$fields": {
838
+ "additionalProperties": {
839
+ "$ref": "#/definitions/IValue"
840
+ },
841
+ "type": "object"
842
+ },
843
+ "subscriptionOptions&2$pushConfig$attributes": {
844
+ "additionalProperties": {
845
+ "type": "string"
1317
846
  },
1318
- "shouldRetryFn": {},
1319
- "getResumptionRequestFn": {}
847
+ "type": "object"
848
+ },
849
+ "subscriptionOptions&2$tags": {
850
+ "additionalProperties": {
851
+ "type": "string"
852
+ },
853
+ "type": "object"
854
+ },
855
+ "subscriptionOptions&3$gaxOpts$otherArgs": {
856
+ "additionalProperties": {},
857
+ "type": "object"
1320
858
  }
1321
859
  },
1322
- "google.pubsub.v1.BigQueryConfig.State": {
1323
- "type": "number",
1324
- "enum": [
1325
- 0,
1326
- 1,
1327
- 2,
1328
- 3,
1329
- 4,
1330
- 5
1331
- ],
1332
- "description": "State enum."
1333
- },
1334
- "google.pubsub.v1.CloudStorageConfig.State": {
1335
- "type": "number",
1336
- "enum": [
1337
- 0,
1338
- 1,
1339
- 2,
1340
- 3,
1341
- 4
1342
- ],
1343
- "description": "State enum."
1344
- },
1345
- "google.pubsub.v1.Subscription.State": {
1346
- "type": "number",
1347
- "enum": [
1348
- 0,
1349
- 1,
1350
- 2
1351
- ],
1352
- "description": "State enum."
1353
- },
1354
- "OidcToken": {
1355
- "type": "object",
1356
- "properties": {
1357
- "serviceAccountEmail": {
1358
- "type": [
1359
- "string",
1360
- "null"
1361
- ],
1362
- "description": "OidcToken serviceAccountEmail"
860
+ "description": "Configuration for {@link GCPPubSubService}",
861
+ "properties": {
862
+ "subscriptionOptions": {
863
+ "additionalProperties": false,
864
+ "description": "Subscription options to pass to GCP",
865
+ "properties": {
866
+ "ackDeadlineSeconds": {
867
+ "description": "Subscription ackDeadlineSeconds",
868
+ "type": "number"
869
+ },
870
+ "analyticsHubSubscriptionInfo": {
871
+ "$ref": "#/definitions/IAnalyticsHubSubscriptionInfo",
872
+ "description": "Subscription analyticsHubSubscriptionInfo"
873
+ },
874
+ "bigqueryConfig": {
875
+ "$ref": "#/definitions/IBigQueryConfig",
876
+ "description": "Subscription bigqueryConfig"
877
+ },
878
+ "bigtableConfig": {
879
+ "$ref": "#/definitions/IBigtableConfig",
880
+ "description": "Subscription bigtableConfig"
881
+ },
882
+ "cloudStorageConfig": {
883
+ "$ref": "#/definitions/ICloudStorageConfig",
884
+ "description": "Subscription cloudStorageConfig"
885
+ },
886
+ "deadLetterPolicy": {
887
+ "$ref": "#/definitions/IDeadLetterPolicy",
888
+ "description": "Subscription deadLetterPolicy"
889
+ },
890
+ "detached": {
891
+ "default": false,
892
+ "description": "Subscription detached",
893
+ "type": "boolean"
894
+ },
895
+ "enableExactlyOnceDelivery": {
896
+ "default": false,
897
+ "description": "Subscription enableExactlyOnceDelivery",
898
+ "type": "boolean"
899
+ },
900
+ "enableMessageOrdering": {
901
+ "default": false,
902
+ "description": "Subscription enableMessageOrdering",
903
+ "type": "boolean"
904
+ },
905
+ "expirationPolicy": {
906
+ "$ref": "#/definitions/IExpirationPolicy",
907
+ "description": "Subscription expirationPolicy"
908
+ },
909
+ "filter": {
910
+ "description": "Subscription filter",
911
+ "type": "string"
912
+ },
913
+ "flowControl": {
914
+ "$ref": "#/definitions/FlowControlOptions"
915
+ },
916
+ "gaxOpts": {
917
+ "$ref": "#/definitions/CallOptions"
918
+ },
919
+ "labels": {
920
+ "$ref": "#/definitions/subscriptionOptions%262%24labels",
921
+ "description": "Subscription labels"
922
+ },
923
+ "messageRetentionDuration": {
924
+ "anyOf": [
925
+ {
926
+ "type": "number"
927
+ },
928
+ {
929
+ "$ref": "#/definitions/IDuration"
930
+ }
931
+ ]
932
+ },
933
+ "messageTransforms": {
934
+ "description": "Subscription messageTransforms",
935
+ "items": {
936
+ "$ref": "#/definitions/IMessageTransform"
937
+ },
938
+ "type": "array"
939
+ },
940
+ "name": {
941
+ "description": "Subscription name",
942
+ "type": "string"
943
+ },
944
+ "oidcToken": {
945
+ "$ref": "#/definitions/IOidcToken"
946
+ },
947
+ "pushConfig": {
948
+ "$ref": "#/definitions/IPushConfig",
949
+ "description": "Subscription pushConfig"
950
+ },
951
+ "pushEndpoint": {
952
+ "type": "string"
953
+ },
954
+ "retainAckedMessages": {
955
+ "default": false,
956
+ "description": "Subscription retainAckedMessages",
957
+ "type": "boolean"
958
+ },
959
+ "retryPolicy": {
960
+ "$ref": "#/definitions/IRetryPolicy",
961
+ "description": "Subscription retryPolicy"
962
+ },
963
+ "state": {
964
+ "description": "Subscription state",
965
+ "enum": [
966
+ "STATE_UNSPECIFIED",
967
+ "ACTIVE",
968
+ 0,
969
+ 1,
970
+ 2,
971
+ "RESOURCE_ERROR"
972
+ ],
973
+ "type": [
974
+ "string",
975
+ "number"
976
+ ]
977
+ },
978
+ "tags": {
979
+ "$ref": "#/definitions/subscriptionOptions%262%24tags",
980
+ "description": "Subscription tags"
981
+ },
982
+ "topic": {
983
+ "description": "Subscription topic",
984
+ "type": "string"
985
+ },
986
+ "topicMessageRetentionDuration": {
987
+ "$ref": "#/definitions/IDuration",
988
+ "description": "Subscription topicMessageRetentionDuration"
989
+ }
1363
990
  },
1364
- "audience": {
1365
- "type": [
1366
- "string",
1367
- "null"
1368
- ],
1369
- "description": "OidcToken audience"
1370
- }
991
+ "type": "object"
1371
992
  },
1372
- "description": "Properties of an OidcToken."
1373
- }
993
+ "topic": {
994
+ "description": "Topic to use on GCP",
995
+ "type": "string"
996
+ },
997
+ "type": {
998
+ "description": "Type of the service",
999
+ "type": "string"
1000
+ },
1001
+ "openapi": {
1002
+ "type": "object",
1003
+ "additionalProperties": true
1004
+ }
1005
+ },
1006
+ "required": [
1007
+ "topic",
1008
+ "type"
1009
+ ],
1010
+ "type": "object",
1011
+ "title": "GCPPubSubService"
1374
1012
  },
1375
- "title": "GCPPubSubService"
1013
+ "Configuration": "lib/services/pubsub.service:GCPPubSubParameters"
1376
1014
  },
1377
1015
  "Webda/GoogleCloudQueue": {
1378
- "type": "object",
1379
- "properties": {
1380
- "type": {
1381
- "type": "string",
1382
- "description": "Type of the service"
1383
- },
1384
- "url": {
1385
- "type": "string",
1386
- "description": "URL on which to serve the content"
1387
- },
1388
- "workerDelayer": {
1389
- "type": "object",
1390
- "properties": {
1391
- "interval": {
1392
- "type": "number",
1393
- "description": "Interval"
1016
+ "Import": "lib/services/queue.service:default",
1017
+ "Schema": {
1018
+ "$schema": "http://json-schema.org/draft-07/schema#",
1019
+ "additionalProperties": false,
1020
+ "definitions": {
1021
+ "WaitDelayerDefinition": {
1022
+ "additionalProperties": false,
1023
+ "description": "Configuration object for selecting and parameterizing a `WaitDelayer` from the registry.",
1024
+ "properties": {
1025
+ "interval": {
1026
+ "description": "Base interval in milliseconds passed to the delayer factory.",
1027
+ "type": "number"
1028
+ },
1029
+ "type": {
1030
+ "description": "Key identifying the factory in `WaitDelayerFactories.registry` (e.g. `\"linear\"`, `\"exponential\"`).",
1031
+ "type": "string"
1032
+ }
1394
1033
  },
1395
- "type": {
1396
- "type": "string",
1397
- "description": "Type of delayer registered in WaitDelayerFactoryRegistry"
1398
- }
1399
- },
1400
- "required": [
1401
- "interval",
1402
- "type"
1403
- ],
1404
- "description": "Delayer between two failed attempts to process messages"
1405
- },
1406
- "workerParallelism": {
1407
- "type": "boolean",
1408
- "description": "Define if worker should process multi message received in //",
1409
- "default": true
1410
- },
1411
- "maxConsumers": {
1412
- "type": "number",
1413
- "description": "Max number of queue consumers Queue will auto increase to this max number if queue is loaded and it will decrease to just one consumer if no messages are available",
1414
- "default": 10
1415
- },
1416
- "topic": {
1417
- "type": "string",
1418
- "description": "Topic to use"
1419
- },
1420
- "subscription": {
1421
- "type": "string",
1422
- "description": "Subscription to use for the queue\n\nAll instances will use the same subscription to create a queue style pubsub"
1423
- },
1424
- "timeout": {
1425
- "type": "number",
1426
- "description": "Timeout when receiveMessage is used before returning empty result (in ms)\n\nIf not define then no timeout is applied and receiveMessage can hang forever"
1034
+ "required": [
1035
+ "interval",
1036
+ "type"
1037
+ ],
1038
+ "type": "object"
1039
+ }
1427
1040
  },
1428
- "mode": {
1429
- "type": "string",
1430
- "enum": [
1431
- "consumer",
1432
- "receiver"
1433
- ],
1434
- "description": "If receiver, the usage is to call receiveMessage and deleteMessage manually If consumer, the usage is to call consume, the normal flow is used in parallel"
1041
+ "description": "GCPQueue Parameters",
1042
+ "properties": {
1043
+ "maxConsumers": {
1044
+ "default": 10,
1045
+ "description": "Max number of queue consumers\nQueue will auto increase to this max number if queue is loaded\nand it will decrease to just one consumer if no messages are available",
1046
+ "type": "number"
1047
+ },
1048
+ "mode": {
1049
+ "default": "consumer",
1050
+ "description": "If receiver, the usage is to call receiveMessage and deleteMessage manually\nIf consumer, the usage is to call consume, the normal flow is used in parallel",
1051
+ "enum": [
1052
+ "consumer",
1053
+ "receiver"
1054
+ ],
1055
+ "type": "string"
1056
+ },
1057
+ "subscription": {
1058
+ "description": "Subscription to use for the queue\n\nAll instances will use the same subscription to create a queue style pubsub",
1059
+ "type": "string"
1060
+ },
1061
+ "timeout": {
1062
+ "description": "Timeout when receiveMessage is used before returning empty result (in ms)\n\nIf not define then no timeout is applied and receiveMessage can hang forever",
1063
+ "type": "number"
1064
+ },
1065
+ "topic": {
1066
+ "description": "Topic to use",
1067
+ "type": "string"
1068
+ },
1069
+ "type": {
1070
+ "description": "Type of the service",
1071
+ "type": "string"
1072
+ },
1073
+ "workerDelayer": {
1074
+ "$ref": "#/definitions/WaitDelayerDefinition",
1075
+ "description": "Delayer between two failed attempts to process messages"
1076
+ },
1077
+ "workerParallelism": {
1078
+ "default": true,
1079
+ "description": "Define if worker should process multi message received in //",
1080
+ "type": "boolean"
1081
+ },
1082
+ "openapi": {
1083
+ "type": "object",
1084
+ "additionalProperties": true
1085
+ }
1435
1086
  },
1436
- "openapi": {
1437
- "type": "object",
1438
- "additionalProperties": true
1439
- }
1087
+ "required": [
1088
+ "subscription",
1089
+ "topic",
1090
+ "type"
1091
+ ],
1092
+ "type": "object",
1093
+ "title": "GCPQueue"
1440
1094
  },
1441
- "required": [
1442
- "maxConsumers",
1443
- "mode",
1444
- "subscription",
1445
- "topic",
1446
- "type"
1447
- ],
1448
- "description": "GCPQueue Parameters",
1449
- "$schema": "http://json-schema.org/draft-07/schema#",
1450
- "title": "GCPQueue"
1095
+ "Configuration": "lib/services/queue.service:GCPQueueParameters"
1451
1096
  },
1452
1097
  "Webda/GoogleCloudStorage": {
1453
- "type": "object",
1454
- "properties": {
1455
- "type": {
1456
- "type": "string",
1457
- "description": "Type of the service"
1458
- },
1459
- "url": {
1460
- "type": "string",
1461
- "description": "URL on which to serve the content"
1098
+ "Import": "lib/services/storage.service:default",
1099
+ "Schema": {
1100
+ "$schema": "http://json-schema.org/draft-07/schema#",
1101
+ "additionalProperties": false,
1102
+ "definitions": {
1103
+ "models": {
1104
+ "additionalProperties": {
1105
+ "items": {
1106
+ "type": "string"
1107
+ },
1108
+ "type": "array"
1109
+ },
1110
+ "description": "Define the map of models\n* indicates all models\n\nkey is a Store name\nthe string[] represent all valids attributes to store files in * indicates all attributes",
1111
+ "type": "object"
1112
+ }
1462
1113
  },
1463
- "map": {
1464
- "type": "object",
1465
- "additionalProperties": {
1466
- "type": "array",
1467
- "items": {
1468
- "type": "string"
1469
- }
1114
+ "description": "Configuration for {@link Storage}",
1115
+ "properties": {
1116
+ "bucket": {
1117
+ "description": "Bucket to store binaries in",
1118
+ "type": "string"
1470
1119
  },
1471
- "description": "Define the map to Object collection\n\nkey is a Store name the string[] represent all valids attributes to store files in",
1472
- "deprecated": true
1473
- },
1474
- "models": {
1475
- "type": "object",
1476
- "additionalProperties": {
1477
- "type": "array",
1478
- "items": {
1479
- "type": "string"
1480
- }
1120
+ "endpoint": {
1121
+ "description": "Specify endpoint for GCS",
1122
+ "type": "string"
1123
+ },
1124
+ "maxFileSize": {
1125
+ "default": "10 MB",
1126
+ "description": "Define the maximum filesize to accept as direct upload\nGet the max file size in bytes",
1127
+ "returns": "the result number",
1128
+ "type": "number"
1129
+ },
1130
+ "models": {
1131
+ "$ref": "#/definitions/models",
1132
+ "description": "Define the map of models\n* indicates all models\n\nkey is a Store name\nthe string[] represent all valids attributes to store files in * indicates all attributes"
1481
1133
  },
1482
- "description": "Define the map of models\n* indicates all models\n\nkey is a Store name the string[] represent all valids attributes to store files in * indicates all attributes"
1134
+ "prefix": {
1135
+ "type": "string"
1136
+ },
1137
+ "type": {
1138
+ "description": "Type of the service",
1139
+ "type": "string"
1140
+ },
1141
+ "openapi": {
1142
+ "type": "object",
1143
+ "additionalProperties": true
1144
+ }
1483
1145
  },
1484
- "expose": {
1485
- "type": "object",
1486
- "properties": {
1487
- "url": {
1488
- "type": "string",
1489
- "description": "URL to expose the service to"
1490
- },
1491
- "restrict": {
1492
- "type": "object",
1493
- "properties": {
1494
- "get": {
1495
- "type": "boolean",
1496
- "description": "Restrict GET"
1497
- },
1498
- "create": {
1499
- "type": "boolean",
1500
- "description": "Restrict POST"
1501
- },
1502
- "delete": {
1503
- "type": "boolean",
1504
- "description": "Restrict DELETE"
1505
- },
1506
- "metadata": {
1507
- "type": "boolean",
1508
- "description": "Restrict update of metadata"
1509
- }
1510
- },
1511
- "description": "Restrict some APIs"
1512
- }
1513
- },
1514
- "required": [
1515
- "url"
1516
- ],
1517
- "description": "Expose the service to http",
1518
- "deprecated": "will be removed in 4.0"
1146
+ "required": [
1147
+ "bucket",
1148
+ "models",
1149
+ "type"
1150
+ ],
1151
+ "type": "object",
1152
+ "title": "Storage"
1153
+ },
1154
+ "Configuration": "lib/services/storage.service:StorageParameters"
1155
+ }
1156
+ },
1157
+ "models": {},
1158
+ "schemas": {
1159
+ "Webda/BinaryFile": {
1160
+ "$schema": "http://json-schema.org/draft-07/schema#",
1161
+ "WebdaSchema": true,
1162
+ "additionalProperties": false,
1163
+ "description": "Represent a file to store",
1164
+ "properties": {
1165
+ "challenge": {
1166
+ "description": "Will be computed by the service\n\nhash of the content prefixed by 'WEBDA'",
1167
+ "type": "string"
1168
+ },
1169
+ "hash": {
1170
+ "description": "Will be computed by the service\n\nhash of the content",
1171
+ "type": "string"
1519
1172
  },
1520
- "prefix": {
1173
+ "metadata": {
1174
+ "description": "Metadatas stored along with the binary"
1175
+ },
1176
+ "mimetype": {
1177
+ "description": "Mimetype of the binary",
1521
1178
  "type": "string"
1522
1179
  },
1523
- "bucket": {
1180
+ "name": {
1181
+ "description": "Current name",
1524
1182
  "type": "string"
1525
1183
  },
1526
- "endpoint": {
1527
- "type": "string",
1528
- "description": "Specify endpoint for GCS"
1184
+ "originalname": {
1185
+ "description": "Original name",
1186
+ "type": "string"
1529
1187
  },
1530
- "openapi": {
1531
- "type": "object",
1532
- "additionalProperties": true
1188
+ "size": {
1189
+ "description": "Size of the binary",
1190
+ "type": "number"
1533
1191
  }
1534
1192
  },
1535
1193
  "required": [
1536
- "bucket",
1537
- "map",
1538
- "models",
1539
- "type"
1194
+ "mimetype",
1195
+ "name",
1196
+ "size"
1540
1197
  ],
1541
- "$schema": "http://json-schema.org/draft-07/schema#",
1542
- "title": "Storage"
1198
+ "type": "object",
1199
+ "title": "BinaryFile"
1543
1200
  }
1544
- }
1201
+ },
1202
+ "behaviors": {}
1545
1203
  }