cloudcms-cli
Version:
Cloud CMS Command-Line client
71 lines (67 loc) • 2.53 kB
JavaScript
var helper = require("../../../helper");
var AbstractCommand = require("../../abstract");
class ListPrincipalMembershipsCommand extends AbstractCommand
{
constructor()
{
super({
"group": "domain",
"name": "list-memberships",
"description": "Lists the groups to which a principal belongs",
"schema": {
"properties": [{
"name": "domainId",
"type": "string",
"description": "Enter the domain ID",
"required": true,
"args": ["domain", "d"]
}, {
"name": "principalId",
"type": "string",
"description": "Enter the principal ID",
"required": true,
"args": ["principal", "p", "id"]
}, {
"name": "principalId",
"type": "string",
"description": "Enter the principal ID",
"required": true,
"args": ["principal", "p", "id"]
}, {
"name": "indirect",
"type": "string",
"description": "Include indirect members (children of children)",
"required": false,
"default": false,
"args": ["indirect"]
}, {
"name": "skip",
"type": "number",
"description": "Enter the pagination skip",
"required": false,
"args": ["skip", "s"]
}, {
"name": "limit",
"type": "number",
"description": "Enter the pagination limit",
"required": false,
"args": ["limit", "l"]
}, {
"name": "sort",
"type": "string",
"description": "Enter the pagination sort JSON",
"required": false,
"args": ["sort", "x"]
}]
}
});
}
handle(options, callback)
{
// call workhorse function
helper.listPrincipalMemberships(options.domainId, options.principalId, options.indirect, options.skip, options.limit, options.sort, function(err) {
callback(err);
});
}
}
module.exports = ListPrincipalMembershipsCommand;