@dishantlangayan/sc-plugin-queue 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -20,7 +20,7 @@ $ npm install -g @dishantlangayan/sc-plugin-queue
20
20
  $ sc COMMAND
21
21
  running command...
22
22
  $ sc (--version)
23
- @dishantlangayan/sc-plugin-queue/0.1.0 darwin-arm64 node-v24.1.0
23
+ @dishantlangayan/sc-plugin-queue/0.1.1 darwin-arm64 node-v24.1.0
24
24
  $ sc --help [COMMAND]
25
25
  USAGE
26
26
  $ sc COMMAND
@@ -29,43 +29,99 @@ USAGE
29
29
  <!-- usagestop -->
30
30
  # Commands
31
31
  <!-- commands -->
32
- * [`sc broker queue create [FILE]`](#sc-broker-queue-create-file)
32
+ * [`sc broker queue create`](#sc-broker-queue-create)
33
33
  * [`sc broker queue list`](#sc-broker-queue-list)
34
- * [`sc help [COMMAND]`](#sc-help-command)
35
- * [`sc plugins`](#sc-plugins)
36
- * [`sc plugins add PLUGIN`](#sc-plugins-add-plugin)
37
- * [`sc plugins:inspect PLUGIN...`](#sc-pluginsinspect-plugin)
38
- * [`sc plugins install PLUGIN`](#sc-plugins-install-plugin)
39
- * [`sc plugins link PATH`](#sc-plugins-link-path)
40
- * [`sc plugins remove [PLUGIN]`](#sc-plugins-remove-plugin)
41
- * [`sc plugins reset`](#sc-plugins-reset)
42
- * [`sc plugins uninstall [PLUGIN]`](#sc-plugins-uninstall-plugin)
43
- * [`sc plugins unlink [PLUGIN]`](#sc-plugins-unlink-plugin)
44
- * [`sc plugins update`](#sc-plugins-update)
45
34
 
46
- ## `sc broker queue create [FILE]`
35
+ ## `sc broker queue create`
47
36
 
48
- describe the command here
37
+ Create a Queue on a Solace Cloud Broker.
49
38
 
50
39
  ```
51
40
  USAGE
52
- $ sc broker queue create [FILE] [-f] [-n <value>]
53
-
54
- ARGUMENTS
55
- [FILE] file to read
41
+ $ sc broker queue create -q <value> [--json] [--log-level debug|warn|error|info|trace] [-a exclusive|non-exclusive] [-b
42
+ <value>] [-n <value>] [--consumer-ack-propagation-enabled] [--dead-msg-queue <value>] [--delivery-count-enabled]
43
+ [--delivery-delay <value>] [--egress-enabled] [--ingress-enabled] [--max-bind-count <value>]
44
+ [--max-delivered-unacked-msgs-per-flow <value>] [--max-msg-size <value>] [-s <value>] [--max-redelivery-count
45
+ <value>] [--max-ttl <value>] [-o <value>] [-p consume|delete|modify-topic|no-access|read-only]
46
+ [--redelivery-delay-enabled] [--redelivery-delay-initial-interval <value>] [--redelivery-delay-max-interval <value>]
47
+ [--redelivery-delay-multiplier <value>] [--redelivery-enabled] [--reject-low-priority-msg-enabled]
48
+ [--reject-low-priority-msg-limit <value>] [--reject-msg-to-sender-on-discard-behavior
49
+ always|never|when-queue-enabled] [--respect-msg-priority-enabled] [--respect-ttl-enabled]
56
50
 
57
51
  FLAGS
58
- -f, --force
59
- -n, --name=<value> name to print
52
+ -a, --access-type=<option> [default: exclusive] The access type for the queue.
53
+ <options: exclusive|non-exclusive>
54
+ -b, --broker-id=<value> Id of the event broker service.
55
+ -n, --broker-name=<value> Name of the event broker service.
56
+ -o, --owner=<value> The client username that owns the queue and has permission
57
+ equivalent to delete.
58
+ -p, --permission=<option> [default: no-access] The permission level for all consumers
59
+ of the queue, excluding the owner.
60
+ <options: consume|delete|modify-topic|no-access|read-only>
61
+ -q, --queue-name=<value> (required) The name of the queue to create.
62
+ -s, --max-msg-spool-usage=<value> The maximum message spool usage allowed by the queue, in
63
+ megabytes (MB).
64
+ --[no-]consumer-ack-propagation-enabled Enable or disable the propagation of consumer
65
+ acknowledgments.
66
+ --dead-msg-queue=<value> The name of the Dead Message Queue.
67
+ --[no-]delivery-count-enabled Enable or disable delivery count on the messages.
68
+ --delivery-delay=<value> The delay, in seconds, to apply to messages arriving on the
69
+ queue before the messages are eligible for delivery.
70
+ --[no-]egress-enabled Enable or disable egress (message consumption) from the
71
+ queue.
72
+ --[no-]ingress-enabled Enable or disable ingress (message reception) to the queue.
73
+ --max-bind-count=<value> The maximum number of consumer flows that can bind to the
74
+ queue.
75
+ --max-delivered-unacked-msgs-per-flow=<value> The maximum number of messages delivered but not acknowledged
76
+ per flow.
77
+ --max-msg-size=<value> The maximum message size allowed in the queue, in bytes.
78
+ --max-redelivery-count=<value> The maximum number of times a message will be redelivered
79
+ before it is discarded or moved to the DMQ.
80
+ --max-ttl=<value> The maximum time in seconds a message can stay in the queue
81
+ when respect-ttl-enabled is true.
82
+ --[no-]redelivery-delay-enabled Enable or disable a message redelivery delay.
83
+ --redelivery-delay-initial-interval=<value> The delay to be used between the first 2 redelivery attempts,
84
+ in milliseconds.
85
+ --redelivery-delay-max-interval=<value> The maximum delay to be used between any 2 redelivery
86
+ attempts, in milliseconds.
87
+ --redelivery-delay-multiplier=<value> The amount each delay interval is multiplied by after each
88
+ failed delivery attempt.
89
+ --[no-]redelivery-enabled Enable or disable message redelivery.
90
+ --[no-]reject-low-priority-msg-enabled Enable or disable the checking of low priority messages
91
+ against the reject-low-priority-msg-limit.
92
+ --reject-low-priority-msg-limit=<value> The number of messages of any priority above which low
93
+ priority messages are not admitted.
94
+ --reject-msg-to-sender-on-discard-behavior=<option> Determines when to return negative acknowledgments (NACKs) to
95
+ sending clients on message discards.
96
+ <options: always|never|when-queue-enabled>
97
+ --[no-]respect-msg-priority-enabled Enable or disable the respecting of message priority.
98
+ --[no-]respect-ttl-enabled Enable or disable the respecting of the time-to-live (TTL)
99
+ for messages.
100
+
101
+ GLOBAL FLAGS
102
+ --json Format output as json.
103
+ --log-level=<option> [default: info] Specify level for logging.
104
+ <options: debug|warn|error|info|trace>
60
105
 
61
106
  DESCRIPTION
62
- describe the command here
107
+ Create a Queue on a Solace Cloud Broker.
108
+
109
+ Your token must have one of the permissions listed in the Token Permissions.
110
+
111
+ Token Permissions: [ mission_control:access or services:get or services:get:self or services:view or
112
+ services:view:self ]
63
113
 
64
114
  EXAMPLES
65
- $ sc broker queue create
115
+ $ sc broker queue create --broker-id=MyBrokerId --queue-name=myQueue
116
+
117
+ $ sc broker queue create --broker-name=MyBrokerName --queue-name=myQueue --access-type=exclusive
118
+
119
+ $ sc broker queue create --broker-name=MyBrokerName --queue-name=myQueue --owner=user1 --permission=consume
120
+
121
+ $ sc broker queue create --broker-id=MyBrokerId --queue-name=myQueue --max-spool-usage=100 --ingress-enabled --egress-enabled
66
122
  ```
67
123
 
68
- _See code: [src/commands/broker/queue/create.ts](https://github.com/dishantlangayan/sc-plugin-queue/blob/v0.1.0/src/commands/broker/queue/create.ts)_
124
+ _See code: [src/commands/broker/queue/create.ts](https://github.com/dishantlangayan/sc-plugin-queue/blob/v0.1.1/src/commands/broker/queue/create.ts)_
69
125
 
70
126
  ## `sc broker queue list`
71
127
 
@@ -103,315 +159,5 @@ EXAMPLES
103
159
  $ sc broker queue list --broker-name=MyBrokerName --queue-name=test*"
104
160
  ```
105
161
 
106
- _See code: [src/commands/broker/queue/list.ts](https://github.com/dishantlangayan/sc-plugin-queue/blob/v0.1.0/src/commands/broker/queue/list.ts)_
107
-
108
- ## `sc help [COMMAND]`
109
-
110
- Display help for sc.
111
-
112
- ```
113
- USAGE
114
- $ sc help [COMMAND...] [-n]
115
-
116
- ARGUMENTS
117
- [COMMAND...] Command to show help for.
118
-
119
- FLAGS
120
- -n, --nested-commands Include all nested commands in the output.
121
-
122
- DESCRIPTION
123
- Display help for sc.
124
- ```
125
-
126
- _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v6.2.37/src/commands/help.ts)_
127
-
128
- ## `sc plugins`
129
-
130
- List installed plugins.
131
-
132
- ```
133
- USAGE
134
- $ sc plugins [--json] [--core]
135
-
136
- FLAGS
137
- --core Show core plugins.
138
-
139
- GLOBAL FLAGS
140
- --json Format output as json.
141
-
142
- DESCRIPTION
143
- List installed plugins.
144
-
145
- EXAMPLES
146
- $ sc plugins
147
- ```
148
-
149
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/index.ts)_
150
-
151
- ## `sc plugins add PLUGIN`
152
-
153
- Installs a plugin into sc.
154
-
155
- ```
156
- USAGE
157
- $ sc plugins add PLUGIN... [--json] [-f] [-h] [-s | -v]
158
-
159
- ARGUMENTS
160
- PLUGIN... Plugin to install.
161
-
162
- FLAGS
163
- -f, --force Force npm to fetch remote resources even if a local copy exists on disk.
164
- -h, --help Show CLI help.
165
- -s, --silent Silences npm output.
166
- -v, --verbose Show verbose npm output.
167
-
168
- GLOBAL FLAGS
169
- --json Format output as json.
170
-
171
- DESCRIPTION
172
- Installs a plugin into sc.
173
-
174
- Uses npm to install plugins.
175
-
176
- Installation of a user-installed plugin will override a core plugin.
177
-
178
- Use the SC_NPM_LOG_LEVEL environment variable to set the npm loglevel.
179
- Use the SC_NPM_REGISTRY environment variable to set the npm registry.
180
-
181
- ALIASES
182
- $ sc plugins add
183
-
184
- EXAMPLES
185
- Install a plugin from npm registry.
186
-
187
- $ sc plugins add myplugin
188
-
189
- Install a plugin from a github url.
190
-
191
- $ sc plugins add https://github.com/someuser/someplugin
192
-
193
- Install a plugin from a github slug.
194
-
195
- $ sc plugins add someuser/someplugin
196
- ```
197
-
198
- ## `sc plugins:inspect PLUGIN...`
199
-
200
- Displays installation properties of a plugin.
201
-
202
- ```
203
- USAGE
204
- $ sc plugins inspect PLUGIN...
205
-
206
- ARGUMENTS
207
- PLUGIN... [default: .] Plugin to inspect.
208
-
209
- FLAGS
210
- -h, --help Show CLI help.
211
- -v, --verbose
212
-
213
- GLOBAL FLAGS
214
- --json Format output as json.
215
-
216
- DESCRIPTION
217
- Displays installation properties of a plugin.
218
-
219
- EXAMPLES
220
- $ sc plugins inspect myplugin
221
- ```
222
-
223
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/inspect.ts)_
224
-
225
- ## `sc plugins install PLUGIN`
226
-
227
- Installs a plugin into sc.
228
-
229
- ```
230
- USAGE
231
- $ sc plugins install PLUGIN... [--json] [-f] [-h] [-s | -v]
232
-
233
- ARGUMENTS
234
- PLUGIN... Plugin to install.
235
-
236
- FLAGS
237
- -f, --force Force npm to fetch remote resources even if a local copy exists on disk.
238
- -h, --help Show CLI help.
239
- -s, --silent Silences npm output.
240
- -v, --verbose Show verbose npm output.
241
-
242
- GLOBAL FLAGS
243
- --json Format output as json.
244
-
245
- DESCRIPTION
246
- Installs a plugin into sc.
247
-
248
- Uses npm to install plugins.
249
-
250
- Installation of a user-installed plugin will override a core plugin.
251
-
252
- Use the SC_NPM_LOG_LEVEL environment variable to set the npm loglevel.
253
- Use the SC_NPM_REGISTRY environment variable to set the npm registry.
254
-
255
- ALIASES
256
- $ sc plugins add
257
-
258
- EXAMPLES
259
- Install a plugin from npm registry.
260
-
261
- $ sc plugins install myplugin
262
-
263
- Install a plugin from a github url.
264
-
265
- $ sc plugins install https://github.com/someuser/someplugin
266
-
267
- Install a plugin from a github slug.
268
-
269
- $ sc plugins install someuser/someplugin
270
- ```
271
-
272
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/install.ts)_
273
-
274
- ## `sc plugins link PATH`
275
-
276
- Links a plugin into the CLI for development.
277
-
278
- ```
279
- USAGE
280
- $ sc plugins link PATH [-h] [--install] [-v]
281
-
282
- ARGUMENTS
283
- PATH [default: .] path to plugin
284
-
285
- FLAGS
286
- -h, --help Show CLI help.
287
- -v, --verbose
288
- --[no-]install Install dependencies after linking the plugin.
289
-
290
- DESCRIPTION
291
- Links a plugin into the CLI for development.
292
-
293
- Installation of a linked plugin will override a user-installed or core plugin.
294
-
295
- e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
296
- command will override the user-installed or core plugin implementation. This is useful for development work.
297
-
298
-
299
- EXAMPLES
300
- $ sc plugins link myplugin
301
- ```
302
-
303
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/link.ts)_
304
-
305
- ## `sc plugins remove [PLUGIN]`
306
-
307
- Removes a plugin from the CLI.
308
-
309
- ```
310
- USAGE
311
- $ sc plugins remove [PLUGIN...] [-h] [-v]
312
-
313
- ARGUMENTS
314
- [PLUGIN...] plugin to uninstall
315
-
316
- FLAGS
317
- -h, --help Show CLI help.
318
- -v, --verbose
319
-
320
- DESCRIPTION
321
- Removes a plugin from the CLI.
322
-
323
- ALIASES
324
- $ sc plugins unlink
325
- $ sc plugins remove
326
-
327
- EXAMPLES
328
- $ sc plugins remove myplugin
329
- ```
330
-
331
- ## `sc plugins reset`
332
-
333
- Remove all user-installed and linked plugins.
334
-
335
- ```
336
- USAGE
337
- $ sc plugins reset [--hard] [--reinstall]
338
-
339
- FLAGS
340
- --hard Delete node_modules and package manager related files in addition to uninstalling plugins.
341
- --reinstall Reinstall all plugins after uninstalling.
342
- ```
343
-
344
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/reset.ts)_
345
-
346
- ## `sc plugins uninstall [PLUGIN]`
347
-
348
- Removes a plugin from the CLI.
349
-
350
- ```
351
- USAGE
352
- $ sc plugins uninstall [PLUGIN...] [-h] [-v]
353
-
354
- ARGUMENTS
355
- [PLUGIN...] plugin to uninstall
356
-
357
- FLAGS
358
- -h, --help Show CLI help.
359
- -v, --verbose
360
-
361
- DESCRIPTION
362
- Removes a plugin from the CLI.
363
-
364
- ALIASES
365
- $ sc plugins unlink
366
- $ sc plugins remove
367
-
368
- EXAMPLES
369
- $ sc plugins uninstall myplugin
370
- ```
371
-
372
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/uninstall.ts)_
373
-
374
- ## `sc plugins unlink [PLUGIN]`
375
-
376
- Removes a plugin from the CLI.
377
-
378
- ```
379
- USAGE
380
- $ sc plugins unlink [PLUGIN...] [-h] [-v]
381
-
382
- ARGUMENTS
383
- [PLUGIN...] plugin to uninstall
384
-
385
- FLAGS
386
- -h, --help Show CLI help.
387
- -v, --verbose
388
-
389
- DESCRIPTION
390
- Removes a plugin from the CLI.
391
-
392
- ALIASES
393
- $ sc plugins unlink
394
- $ sc plugins remove
395
-
396
- EXAMPLES
397
- $ sc plugins unlink myplugin
398
- ```
399
-
400
- ## `sc plugins update`
401
-
402
- Update installed plugins.
403
-
404
- ```
405
- USAGE
406
- $ sc plugins update [-h] [-v]
407
-
408
- FLAGS
409
- -h, --help Show CLI help.
410
- -v, --verbose
411
-
412
- DESCRIPTION
413
- Update installed plugins.
414
- ```
415
-
416
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.56/src/commands/plugins/update.ts)_
162
+ _See code: [src/commands/broker/queue/list.ts](https://github.com/dishantlangayan/sc-plugin-queue/blob/v0.1.1/src/commands/broker/queue/list.ts)_
417
163
  <!-- commandsstop -->
@@ -1,13 +1,38 @@
1
- import { Command } from '@oclif/core';
2
- export default class BrokerQueueCreate extends Command {
3
- static args: {
4
- file: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
5
- };
1
+ import { ScCommand } from '@dishantlangayan/sc-cli-core';
2
+ import { MsgVpnQueueCreateResponse } from '../../../types/msgvpn-queue.js';
3
+ export default class BrokerQueueCreate extends ScCommand<typeof BrokerQueueCreate> {
4
+ static args: {};
6
5
  static description: string;
7
6
  static examples: string[];
8
7
  static flags: {
9
- force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
- name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ 'access-type': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
+ 'broker-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'broker-name': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ 'consumer-ack-propagation-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
+ 'dead-msg-queue': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
+ 'delivery-count-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ 'delivery-delay': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
+ 'egress-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ 'ingress-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
+ 'max-bind-count': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ 'max-delivered-unacked-msgs-per-flow': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ 'max-msg-size': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ 'max-msg-spool-usage': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ 'max-redelivery-count': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ 'max-ttl': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
+ owner: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ permission: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'queue-name': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'redelivery-delay-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
+ 'redelivery-delay-initial-interval': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'redelivery-delay-max-interval': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'redelivery-delay-multiplier': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'redelivery-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ 'reject-low-priority-msg-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ 'reject-low-priority-msg-limit': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'reject-msg-to-sender-on-discard-behavior': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ 'respect-msg-priority-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
35
+ 'respect-ttl-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
36
  };
12
- run(): Promise<void>;
37
+ run(): Promise<MsgVpnQueueCreateResponse>;
13
38
  }
@@ -1,24 +1,224 @@
1
- import { Args, Command, Flags } from '@oclif/core';
2
- export default class BrokerQueueCreate extends Command {
3
- static args = {
4
- file: Args.string({ description: 'file to read' }),
5
- };
6
- static description = 'describe the command here';
1
+ import { printObjectAsKeyValueTable, ScCommand, ScConnection } from '@dishantlangayan/sc-cli-core';
2
+ import { Flags } from '@oclif/core';
3
+ export default class BrokerQueueCreate extends ScCommand {
4
+ static args = {};
5
+ static description = `Create a Queue on a Solace Cloud Broker.
6
+
7
+ Your token must have one of the permissions listed in the Token Permissions.
8
+
9
+ Token Permissions: [ mission_control:access or services:get or services:get:self or services:view or services:view:self ]`;
7
10
  static examples = [
8
- '<%= config.bin %> <%= command.id %>',
11
+ '<%= config.bin %> <%= command.id %> --broker-id=MyBrokerId --queue-name=myQueue',
12
+ '<%= config.bin %> <%= command.id %> --broker-name=MyBrokerName --queue-name=myQueue --access-type=exclusive',
13
+ '<%= config.bin %> <%= command.id %> --broker-name=MyBrokerName --queue-name=myQueue --owner=user1 --permission=consume',
14
+ '<%= config.bin %> <%= command.id %> --broker-id=MyBrokerId --queue-name=myQueue --max-spool-usage=100 --ingress-enabled --egress-enabled',
9
15
  ];
10
16
  static flags = {
11
- // flag with no value (-f, --force)
12
- force: Flags.boolean({ char: 'f' }),
13
- // flag with a value (-n, --name=VALUE)
14
- name: Flags.string({ char: 'n', description: 'name to print' }),
17
+ 'access-type': Flags.string({
18
+ char: 'a',
19
+ default: 'exclusive',
20
+ description: 'The access type for the queue.',
21
+ options: ['exclusive', 'non-exclusive'],
22
+ }),
23
+ 'broker-id': Flags.string({
24
+ char: 'b',
25
+ description: 'Id of the event broker service.',
26
+ exactlyOne: ['broker-id', 'broker-name'],
27
+ }),
28
+ 'broker-name': Flags.string({
29
+ char: 'n',
30
+ description: 'Name of the event broker service.',
31
+ exactlyOne: ['broker-id', 'broker-name'],
32
+ }),
33
+ 'consumer-ack-propagation-enabled': Flags.boolean({
34
+ allowNo: true,
35
+ description: 'Enable or disable the propagation of consumer acknowledgments.',
36
+ }),
37
+ 'dead-msg-queue': Flags.string({
38
+ description: 'The name of the Dead Message Queue.',
39
+ }),
40
+ 'delivery-count-enabled': Flags.boolean({
41
+ allowNo: true,
42
+ description: 'Enable or disable delivery count on the messages.',
43
+ }),
44
+ 'delivery-delay': Flags.integer({
45
+ description: 'The delay, in seconds, to apply to messages arriving on the queue before the messages are eligible for delivery.',
46
+ min: 0,
47
+ }),
48
+ 'egress-enabled': Flags.boolean({
49
+ allowNo: true,
50
+ default: true,
51
+ description: 'Enable or disable egress (message consumption) from the queue.',
52
+ }),
53
+ 'ingress-enabled': Flags.boolean({
54
+ allowNo: true,
55
+ default: true,
56
+ description: 'Enable or disable ingress (message reception) to the queue.',
57
+ }),
58
+ 'max-bind-count': Flags.integer({
59
+ description: 'The maximum number of consumer flows that can bind to the queue.',
60
+ min: 0,
61
+ }),
62
+ 'max-delivered-unacked-msgs-per-flow': Flags.integer({
63
+ description: 'The maximum number of messages delivered but not acknowledged per flow.',
64
+ min: 0,
65
+ }),
66
+ 'max-msg-size': Flags.integer({
67
+ description: 'The maximum message size allowed in the queue, in bytes.',
68
+ min: 0,
69
+ }),
70
+ 'max-msg-spool-usage': Flags.integer({
71
+ char: 's',
72
+ description: 'The maximum message spool usage allowed by the queue, in megabytes (MB).',
73
+ min: 0,
74
+ }),
75
+ 'max-redelivery-count': Flags.integer({
76
+ description: 'The maximum number of times a message will be redelivered before it is discarded or moved to the DMQ.',
77
+ min: 0,
78
+ }),
79
+ 'max-ttl': Flags.integer({
80
+ description: 'The maximum time in seconds a message can stay in the queue when respect-ttl-enabled is true.',
81
+ min: 0,
82
+ }),
83
+ owner: Flags.string({
84
+ char: 'o',
85
+ description: 'The client username that owns the queue and has permission equivalent to delete.',
86
+ }),
87
+ permission: Flags.string({
88
+ char: 'p',
89
+ default: 'no-access',
90
+ description: 'The permission level for all consumers of the queue, excluding the owner.',
91
+ options: ['consume', 'delete', 'modify-topic', 'no-access', 'read-only'],
92
+ }),
93
+ 'queue-name': Flags.string({
94
+ char: 'q',
95
+ description: 'The name of the queue to create.',
96
+ required: true,
97
+ }),
98
+ 'redelivery-delay-enabled': Flags.boolean({
99
+ allowNo: true,
100
+ description: 'Enable or disable a message redelivery delay.',
101
+ }),
102
+ 'redelivery-delay-initial-interval': Flags.integer({
103
+ description: 'The delay to be used between the first 2 redelivery attempts, in milliseconds.',
104
+ min: 0,
105
+ }),
106
+ 'redelivery-delay-max-interval': Flags.integer({
107
+ description: 'The maximum delay to be used between any 2 redelivery attempts, in milliseconds.',
108
+ min: 0,
109
+ }),
110
+ 'redelivery-delay-multiplier': Flags.integer({
111
+ description: 'The amount each delay interval is multiplied by after each failed delivery attempt.',
112
+ min: 0,
113
+ }),
114
+ 'redelivery-enabled': Flags.boolean({
115
+ allowNo: true,
116
+ description: 'Enable or disable message redelivery.',
117
+ }),
118
+ 'reject-low-priority-msg-enabled': Flags.boolean({
119
+ allowNo: true,
120
+ description: 'Enable or disable the checking of low priority messages against the reject-low-priority-msg-limit.',
121
+ }),
122
+ 'reject-low-priority-msg-limit': Flags.integer({
123
+ description: 'The number of messages of any priority above which low priority messages are not admitted.',
124
+ min: 0,
125
+ }),
126
+ 'reject-msg-to-sender-on-discard-behavior': Flags.string({
127
+ description: 'Determines when to return negative acknowledgments (NACKs) to sending clients on message discards.',
128
+ options: ['always', 'never', 'when-queue-enabled'],
129
+ }),
130
+ 'respect-msg-priority-enabled': Flags.boolean({
131
+ allowNo: true,
132
+ description: 'Enable or disable the respecting of message priority.',
133
+ }),
134
+ 'respect-ttl-enabled': Flags.boolean({
135
+ allowNo: true,
136
+ description: 'Enable or disable the respecting of the time-to-live (TTL) for messages.',
137
+ }),
15
138
  };
16
139
  async run() {
17
- const { args, flags } = await this.parse(BrokerQueueCreate);
18
- const name = flags.name ?? 'world';
19
- this.log(`hello ${name} from /Users/dishantlangayan/git/sc-plugins/sc-plugin-queue/src/commands/broker/queue/create.ts`);
20
- if (args.file && flags.force) {
21
- this.log(`you input --force and --file: ${args.file}`);
140
+ const { flags } = await this.parse(BrokerQueueCreate);
141
+ // Create ScConnection instance
142
+ const conn = new ScConnection();
143
+ const brokerName = flags['broker-name'] ?? '';
144
+ let brokerId = flags['broker-id'] ?? '';
145
+ // API url
146
+ let apiUrl = `/missionControl/eventBrokerServices`;
147
+ // If broker name was provided then retrieve the broker Id first
148
+ if (brokerName) {
149
+ const searchByNameApiUrl = `${apiUrl}?customAttributes=name=="${brokerName}"`;
150
+ const brokerResp = await conn.get(searchByNameApiUrl);
151
+ if (brokerResp.data.length === 0) {
152
+ this.error(`No broker found with the name ${brokerName}`);
153
+ }
154
+ // Set the Broker Id
155
+ brokerId = brokerResp.data[0].id;
22
156
  }
157
+ // Retrieve the broker details to get the SEMP port, msgVpn and other fields
158
+ apiUrl += `/${brokerId}?expand=broker&expand=serviceConnectionEndpoints`;
159
+ const brokerResp = await conn.get(apiUrl);
160
+ const { msgVpnName } = brokerResp.data;
161
+ const sempHostName = brokerResp.data.defaultManagementHostname;
162
+ const sempPort = brokerResp.data.serviceConnectionEndpoints[0].ports.find((p) => p.protocol === 'serviceManagementTlsListenPort')?.port;
163
+ const sempUsername = brokerResp.data.broker.msgVpns[0].managementAdminLoginCredential.username;
164
+ const sempPassword = brokerResp.data.broker.msgVpns[0].managementAdminLoginCredential.password;
165
+ const encodedAuthToken = Buffer.from(`${sempUsername}:${sempPassword}`, 'utf8').toString('base64');
166
+ // Create a SEMP connection for Config API
167
+ const sempConn = new ScConnection(`https://${sempHostName}:${sempPort}`, encodedAuthToken, undefined, true);
168
+ // Build the queue creation request body
169
+ const queueBody = {
170
+ queueName: flags['queue-name'],
171
+ ...(flags['access-type'] && { accessType: flags['access-type'] }),
172
+ ...(flags['consumer-ack-propagation-enabled'] !== undefined && {
173
+ consumerAckPropagationEnabled: flags['consumer-ack-propagation-enabled'],
174
+ }),
175
+ ...(flags['dead-msg-queue'] && { deadMsgQueue: flags['dead-msg-queue'] }),
176
+ ...(flags['delivery-count-enabled'] !== undefined && { deliveryCountEnabled: flags['delivery-count-enabled'] }),
177
+ ...(flags['delivery-delay'] !== undefined && { deliveryDelay: flags['delivery-delay'] }),
178
+ ...(flags['egress-enabled'] !== undefined && { egressEnabled: flags['egress-enabled'] }),
179
+ ...(flags['ingress-enabled'] !== undefined && { ingressEnabled: flags['ingress-enabled'] }),
180
+ ...(flags['max-bind-count'] !== undefined && { maxBindCount: flags['max-bind-count'] }),
181
+ ...(flags['max-delivered-unacked-msgs-per-flow'] !== undefined && {
182
+ maxDeliveredUnackedMsgsPerFlow: flags['max-delivered-unacked-msgs-per-flow'],
183
+ }),
184
+ ...(flags['max-msg-size'] !== undefined && { maxMsgSize: flags['max-msg-size'] }),
185
+ ...(flags['max-msg-spool-usage'] !== undefined && { maxMsgSpoolUsage: flags['max-msg-spool-usage'] }),
186
+ ...(flags['max-redelivery-count'] !== undefined && { maxRedeliveryCount: flags['max-redelivery-count'] }),
187
+ ...(flags['max-ttl'] !== undefined && { maxTtl: flags['max-ttl'] }),
188
+ ...(flags.owner && { owner: flags.owner }),
189
+ ...(flags.permission && { permission: flags.permission }),
190
+ ...(flags['redelivery-delay-enabled'] !== undefined && {
191
+ redeliveryDelayEnabled: flags['redelivery-delay-enabled'],
192
+ }),
193
+ ...(flags['redelivery-delay-initial-interval'] !== undefined && {
194
+ redeliveryDelayInitialInterval: flags['redelivery-delay-initial-interval'],
195
+ }),
196
+ ...(flags['redelivery-delay-max-interval'] !== undefined && {
197
+ redeliveryDelayMaxInterval: flags['redelivery-delay-max-interval'],
198
+ }),
199
+ ...(flags['redelivery-delay-multiplier'] !== undefined && {
200
+ redeliveryDelayMultiplier: flags['redelivery-delay-multiplier'],
201
+ }),
202
+ ...(flags['redelivery-enabled'] !== undefined && { redeliveryEnabled: flags['redelivery-enabled'] }),
203
+ ...(flags['reject-low-priority-msg-enabled'] !== undefined && {
204
+ rejectLowPriorityMsgEnabled: flags['reject-low-priority-msg-enabled'],
205
+ }),
206
+ ...(flags['reject-low-priority-msg-limit'] !== undefined && {
207
+ rejectLowPriorityMsgLimit: flags['reject-low-priority-msg-limit'],
208
+ }),
209
+ ...(flags['reject-msg-to-sender-on-discard-behavior'] && {
210
+ rejectMsgToSenderOnDiscardBehavior: flags['reject-msg-to-sender-on-discard-behavior'],
211
+ }),
212
+ ...(flags['respect-msg-priority-enabled'] !== undefined && {
213
+ respectMsgPriorityEnabled: flags['respect-msg-priority-enabled'],
214
+ }),
215
+ ...(flags['respect-ttl-enabled'] !== undefined && { respectTtlEnabled: flags['respect-ttl-enabled'] }),
216
+ };
217
+ // Make SEMP Config API call to create the queue
218
+ const endpoint = `/config/msgVpns/${msgVpnName}/queues`;
219
+ const sempResp = await sempConn.post(endpoint, queueBody);
220
+ // Display results
221
+ this.log(printObjectAsKeyValueTable(sempResp.data));
222
+ return sempResp;
23
223
  }
24
224
  }
@@ -1,3 +1,36 @@
1
+ export interface MsgVpnQueueCreateRequest {
2
+ accessType?: 'exclusive' | 'non-exclusive';
3
+ consumerAckPropagationEnabled?: boolean;
4
+ deadMsgQueue?: string;
5
+ deliveryCountEnabled?: boolean;
6
+ deliveryDelay?: number;
7
+ egressEnabled?: boolean;
8
+ ingressEnabled?: boolean;
9
+ maxBindCount?: number;
10
+ maxDeliveredUnackedMsgsPerFlow?: number;
11
+ maxMsgSize?: number;
12
+ maxMsgSpoolUsage?: number;
13
+ maxRedeliveryCount?: number;
14
+ maxTtl?: number;
15
+ owner?: string;
16
+ permission?: 'consume' | 'delete' | 'modify-topic' | 'no-access' | 'read-only';
17
+ queueName: string;
18
+ redeliveryDelayEnabled?: boolean;
19
+ redeliveryDelayInitialInterval?: number;
20
+ redeliveryDelayMaxInterval?: number;
21
+ redeliveryDelayMultiplier?: number;
22
+ redeliveryEnabled?: boolean;
23
+ rejectLowPriorityMsgEnabled?: boolean;
24
+ rejectLowPriorityMsgLimit?: number;
25
+ rejectMsgToSenderOnDiscardBehavior?: 'always' | 'never' | 'when-queue-enabled';
26
+ respectMsgPriorityEnabled?: boolean;
27
+ respectTtlEnabled?: boolean;
28
+ }
29
+ export interface MsgVpnQueueCreateResponse {
30
+ data: MsgVpnQueue;
31
+ links?: MsgVpnQueueLink;
32
+ meta: SempMeta;
33
+ }
1
34
  export interface MsgVpnQueuesResponse {
2
35
  collections?: MsgVpnQueueCollection[];
3
36
  data: MsgVpnQueue[];
@@ -1 +1,2 @@
1
+ // TypeScript type definitions for SEMP API responses and requests
1
2
  export {};
@@ -2,30 +2,250 @@
2
2
  "commands": {
3
3
  "broker:queue:create": {
4
4
  "aliases": [],
5
- "args": {
6
- "file": {
7
- "description": "file to read",
8
- "name": "file"
9
- }
10
- },
11
- "description": "describe the command here",
5
+ "args": {},
6
+ "description": "Create a Queue on a Solace Cloud Broker.\n\nYour token must have one of the permissions listed in the Token Permissions.\n\nToken Permissions: [ mission_control:access or services:get or services:get:self or services:view or services:view:self ]",
12
7
  "examples": [
13
- "<%= config.bin %> <%= command.id %>"
8
+ "<%= config.bin %> <%= command.id %> --broker-id=MyBrokerId --queue-name=myQueue",
9
+ "<%= config.bin %> <%= command.id %> --broker-name=MyBrokerName --queue-name=myQueue --access-type=exclusive",
10
+ "<%= config.bin %> <%= command.id %> --broker-name=MyBrokerName --queue-name=myQueue --owner=user1 --permission=consume",
11
+ "<%= config.bin %> <%= command.id %> --broker-id=MyBrokerId --queue-name=myQueue --max-spool-usage=100 --ingress-enabled --egress-enabled"
14
12
  ],
15
13
  "flags": {
16
- "force": {
17
- "char": "f",
18
- "name": "force",
14
+ "json": {
15
+ "description": "Format output as json.",
16
+ "helpGroup": "GLOBAL",
17
+ "name": "json",
19
18
  "allowNo": false,
20
19
  "type": "boolean"
21
20
  },
22
- "name": {
21
+ "log-level": {
22
+ "helpGroup": "GLOBAL",
23
+ "name": "log-level",
24
+ "summary": "Specify level for logging.",
25
+ "default": "info",
26
+ "hasDynamicHelp": false,
27
+ "multiple": false,
28
+ "options": [
29
+ "debug",
30
+ "warn",
31
+ "error",
32
+ "info",
33
+ "trace"
34
+ ],
35
+ "type": "option"
36
+ },
37
+ "access-type": {
38
+ "char": "a",
39
+ "description": "The access type for the queue.",
40
+ "name": "access-type",
41
+ "default": "exclusive",
42
+ "hasDynamicHelp": false,
43
+ "multiple": false,
44
+ "options": [
45
+ "exclusive",
46
+ "non-exclusive"
47
+ ],
48
+ "type": "option"
49
+ },
50
+ "broker-id": {
51
+ "char": "b",
52
+ "description": "Id of the event broker service.",
53
+ "name": "broker-id",
54
+ "hasDynamicHelp": false,
55
+ "multiple": false,
56
+ "type": "option"
57
+ },
58
+ "broker-name": {
23
59
  "char": "n",
24
- "description": "name to print",
25
- "name": "name",
60
+ "description": "Name of the event broker service.",
61
+ "name": "broker-name",
62
+ "hasDynamicHelp": false,
63
+ "multiple": false,
64
+ "type": "option"
65
+ },
66
+ "consumer-ack-propagation-enabled": {
67
+ "description": "Enable or disable the propagation of consumer acknowledgments.",
68
+ "name": "consumer-ack-propagation-enabled",
69
+ "allowNo": true,
70
+ "type": "boolean"
71
+ },
72
+ "dead-msg-queue": {
73
+ "description": "The name of the Dead Message Queue.",
74
+ "name": "dead-msg-queue",
75
+ "hasDynamicHelp": false,
76
+ "multiple": false,
77
+ "type": "option"
78
+ },
79
+ "delivery-count-enabled": {
80
+ "description": "Enable or disable delivery count on the messages.",
81
+ "name": "delivery-count-enabled",
82
+ "allowNo": true,
83
+ "type": "boolean"
84
+ },
85
+ "delivery-delay": {
86
+ "description": "The delay, in seconds, to apply to messages arriving on the queue before the messages are eligible for delivery.",
87
+ "name": "delivery-delay",
88
+ "hasDynamicHelp": false,
89
+ "multiple": false,
90
+ "type": "option"
91
+ },
92
+ "egress-enabled": {
93
+ "description": "Enable or disable egress (message consumption) from the queue.",
94
+ "name": "egress-enabled",
95
+ "allowNo": true,
96
+ "type": "boolean"
97
+ },
98
+ "ingress-enabled": {
99
+ "description": "Enable or disable ingress (message reception) to the queue.",
100
+ "name": "ingress-enabled",
101
+ "allowNo": true,
102
+ "type": "boolean"
103
+ },
104
+ "max-bind-count": {
105
+ "description": "The maximum number of consumer flows that can bind to the queue.",
106
+ "name": "max-bind-count",
107
+ "hasDynamicHelp": false,
108
+ "multiple": false,
109
+ "type": "option"
110
+ },
111
+ "max-delivered-unacked-msgs-per-flow": {
112
+ "description": "The maximum number of messages delivered but not acknowledged per flow.",
113
+ "name": "max-delivered-unacked-msgs-per-flow",
114
+ "hasDynamicHelp": false,
115
+ "multiple": false,
116
+ "type": "option"
117
+ },
118
+ "max-msg-size": {
119
+ "description": "The maximum message size allowed in the queue, in bytes.",
120
+ "name": "max-msg-size",
26
121
  "hasDynamicHelp": false,
27
122
  "multiple": false,
28
123
  "type": "option"
124
+ },
125
+ "max-msg-spool-usage": {
126
+ "char": "s",
127
+ "description": "The maximum message spool usage allowed by the queue, in megabytes (MB).",
128
+ "name": "max-msg-spool-usage",
129
+ "hasDynamicHelp": false,
130
+ "multiple": false,
131
+ "type": "option"
132
+ },
133
+ "max-redelivery-count": {
134
+ "description": "The maximum number of times a message will be redelivered before it is discarded or moved to the DMQ.",
135
+ "name": "max-redelivery-count",
136
+ "hasDynamicHelp": false,
137
+ "multiple": false,
138
+ "type": "option"
139
+ },
140
+ "max-ttl": {
141
+ "description": "The maximum time in seconds a message can stay in the queue when respect-ttl-enabled is true.",
142
+ "name": "max-ttl",
143
+ "hasDynamicHelp": false,
144
+ "multiple": false,
145
+ "type": "option"
146
+ },
147
+ "owner": {
148
+ "char": "o",
149
+ "description": "The client username that owns the queue and has permission equivalent to delete.",
150
+ "name": "owner",
151
+ "hasDynamicHelp": false,
152
+ "multiple": false,
153
+ "type": "option"
154
+ },
155
+ "permission": {
156
+ "char": "p",
157
+ "description": "The permission level for all consumers of the queue, excluding the owner.",
158
+ "name": "permission",
159
+ "default": "no-access",
160
+ "hasDynamicHelp": false,
161
+ "multiple": false,
162
+ "options": [
163
+ "consume",
164
+ "delete",
165
+ "modify-topic",
166
+ "no-access",
167
+ "read-only"
168
+ ],
169
+ "type": "option"
170
+ },
171
+ "queue-name": {
172
+ "char": "q",
173
+ "description": "The name of the queue to create.",
174
+ "name": "queue-name",
175
+ "required": true,
176
+ "hasDynamicHelp": false,
177
+ "multiple": false,
178
+ "type": "option"
179
+ },
180
+ "redelivery-delay-enabled": {
181
+ "description": "Enable or disable a message redelivery delay.",
182
+ "name": "redelivery-delay-enabled",
183
+ "allowNo": true,
184
+ "type": "boolean"
185
+ },
186
+ "redelivery-delay-initial-interval": {
187
+ "description": "The delay to be used between the first 2 redelivery attempts, in milliseconds.",
188
+ "name": "redelivery-delay-initial-interval",
189
+ "hasDynamicHelp": false,
190
+ "multiple": false,
191
+ "type": "option"
192
+ },
193
+ "redelivery-delay-max-interval": {
194
+ "description": "The maximum delay to be used between any 2 redelivery attempts, in milliseconds.",
195
+ "name": "redelivery-delay-max-interval",
196
+ "hasDynamicHelp": false,
197
+ "multiple": false,
198
+ "type": "option"
199
+ },
200
+ "redelivery-delay-multiplier": {
201
+ "description": "The amount each delay interval is multiplied by after each failed delivery attempt.",
202
+ "name": "redelivery-delay-multiplier",
203
+ "hasDynamicHelp": false,
204
+ "multiple": false,
205
+ "type": "option"
206
+ },
207
+ "redelivery-enabled": {
208
+ "description": "Enable or disable message redelivery.",
209
+ "name": "redelivery-enabled",
210
+ "allowNo": true,
211
+ "type": "boolean"
212
+ },
213
+ "reject-low-priority-msg-enabled": {
214
+ "description": "Enable or disable the checking of low priority messages against the reject-low-priority-msg-limit.",
215
+ "name": "reject-low-priority-msg-enabled",
216
+ "allowNo": true,
217
+ "type": "boolean"
218
+ },
219
+ "reject-low-priority-msg-limit": {
220
+ "description": "The number of messages of any priority above which low priority messages are not admitted.",
221
+ "name": "reject-low-priority-msg-limit",
222
+ "hasDynamicHelp": false,
223
+ "multiple": false,
224
+ "type": "option"
225
+ },
226
+ "reject-msg-to-sender-on-discard-behavior": {
227
+ "description": "Determines when to return negative acknowledgments (NACKs) to sending clients on message discards.",
228
+ "name": "reject-msg-to-sender-on-discard-behavior",
229
+ "hasDynamicHelp": false,
230
+ "multiple": false,
231
+ "options": [
232
+ "always",
233
+ "never",
234
+ "when-queue-enabled"
235
+ ],
236
+ "type": "option"
237
+ },
238
+ "respect-msg-priority-enabled": {
239
+ "description": "Enable or disable the respecting of message priority.",
240
+ "name": "respect-msg-priority-enabled",
241
+ "allowNo": true,
242
+ "type": "boolean"
243
+ },
244
+ "respect-ttl-enabled": {
245
+ "description": "Enable or disable the respecting of the time-to-live (TTL) for messages.",
246
+ "name": "respect-ttl-enabled",
247
+ "allowNo": true,
248
+ "type": "boolean"
29
249
  }
30
250
  },
31
251
  "hasDynamicHelp": false,
@@ -35,7 +255,7 @@
35
255
  "pluginName": "@dishantlangayan/sc-plugin-queue",
36
256
  "pluginType": "core",
37
257
  "strict": true,
38
- "enableJsonFlag": false,
258
+ "enableJsonFlag": true,
39
259
  "isESM": true,
40
260
  "relativePath": [
41
261
  "dist",
@@ -131,5 +351,5 @@
131
351
  ]
132
352
  }
133
353
  },
134
- "version": "0.1.0"
354
+ "version": "0.1.1"
135
355
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dishantlangayan/sc-plugin-queue",
3
3
  "description": "Commands to interact with queues on a Solace Cloud broker",
4
- "version": "0.1.0",
4
+ "version": "0.1.1",
5
5
  "author": "Dishant Langayan",
6
6
  "bin": {
7
7
  "sc": "./bin/run.js"
@@ -42,7 +42,11 @@
42
42
  ],
43
43
  "homepage": "https://github.com/dishantlangayan/sc-plugin-queue",
44
44
  "keywords": [
45
- "oclif"
45
+ "oclif",
46
+ "solace",
47
+ "cli",
48
+ "sc",
49
+ "sc-plugin"
46
50
  ],
47
51
  "license": "Apache-2.0",
48
52
  "main": "dist/index.js",
@@ -51,16 +55,10 @@
51
55
  "bin": "sc",
52
56
  "dirname": "sc",
53
57
  "commands": "./dist/commands",
54
- "plugins": [
55
- "@oclif/plugin-help",
56
- "@oclif/plugin-plugins"
58
+ "devPlugins": [
59
+ "@oclif/plugin-help"
57
60
  ],
58
- "topicSeparator": " ",
59
- "topics": {
60
- "hello": {
61
- "description": "Say hello to the world and others"
62
- }
63
- }
61
+ "topicSeparator": " "
64
62
  },
65
63
  "repository": "dishantlangayan/sc-plugin-queue",
66
64
  "scripts": {