UNPKG

2.31 kBJavaScriptView Raw
1/********************************************************* {COPYRIGHT-TOP} ***
2 * Licensed Materials - Property of IBM
3 * 5725-Z22, 5725-Z63, 5725-U33, 5725-Z63
4 *
5 * (C) Copyright IBM Corporation 2016, 2017
6 *
7 * All Rights Reserved.
8 * US Government Users Restricted Rights - Use, duplication or disclosure
9 * restricted by GSA ADP Schedule Contract with IBM Corp.
10 ********************************************************** {COPYRIGHT-END} **/
11// Node module: apiconnect-cli-policies
12
13
14var Promise = require('bluebird');
15var g = require('strong-globalize')();
16var logger = require('apiconnect-cli-logger');
17
18module.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
55module.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