1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | var Promise = require('bluebird');
|
15 | var g = require('strong-globalize')();
|
16 | var logger = require('apiconnect-cli-logger');
|
17 |
|
18 | module.exports.listFormat = function(subscriptions, options) {
|
19 | switch (options.scope) {
|
20 | case 'catalog':
|
21 | case 'consumer-org':
|
22 | subscriptions.forEach(function(subscription) {
|
23 | logger.writeln(g.f('%s in %s for %s:%s:%s in %s:%s',
|
24 | subscription.name,
|
25 | subscription.application.appName,
|
26 | subscription.product.name,
|
27 | subscription.product.version,
|
28 | subscription.plan.name,
|
29 | options.organization,
|
30 | options.catalog));
|
31 | });
|
32 | break;
|
33 | case 'space':
|
34 | subscriptions.forEach(function(subscription) {
|
35 | logger.writeln(g.f('%s in %s for %s:%s:%s in %s:%s:%s',
|
36 | subscription.name,
|
37 | subscription.application.appName,
|
38 | subscription.product.name,
|
39 | subscription.product.version,
|
40 | subscription.plan.name,
|
41 | options.organization,
|
42 | options.catalog,
|
43 | subscription.spaces[0].name
|
44 | ));
|
45 | });
|
46 | break;
|
47 | default:
|
48 | var err = new Error(g.f('Invalid scope %s, valid scopes are "catalog", "space" and "consumer-org"',
|
49 | options.scope));
|
50 | err.code = 'INVALID_SCOPE';
|
51 | return Promise.reject(err);
|
52 | }
|
53 | };
|
54 |
|
55 | module.exports.getFormat = function(subscriptions, options) {
|
56 | logger.writeln(g.f('name: %s', subscriptions.name));
|
57 | logger.writeln(g.f('app: %s', subscriptions.application.appName));
|
58 | logger.writeln(g.f('product: %s', subscriptions.product.name));
|
59 | if (subscriptions.spaces && subscriptions.spaces.length > 0) {
|
60 | logger.writeln(g.f('space: %s', subscriptions.spaces[0].name));
|
61 | }
|
62 | logger.writeln(g.f('catalog: %s', options.catalog));
|
63 | logger.writeln(g.f('organization: %s', options.organization));
|
64 | };
|
65 |
|