<commit_before>// BaruwaAPI Golang bindings for Baruwa REST API
// Copyright (C) 2019 <NAME> <<EMAIL>>

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this file,
// You can obtain one at http://mozilla.org/MPL/2.0/.

// Package cmd cmdline client for the Baruwa REST API
package cmd

import (
	cli "github.com/jawher/mow.cli"
)

// RegisterCommands registers all CLI commands
func (c *CLI) RegisterCommands() {
	// user
	c.Command("user", "manage user accounts", func(cmd *cli.Cmd) {
		cmd.Command("show", "show detailed information of a user account", userShow)
		cmd.Command("create", "create a new user account", userCreate)
		cmd.Command("update", "update a user account", userUpdate)
		cmd.Command("delete", "delete a user account", userDelete)
		cmd.Command("alias", "manage user alias addresses", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of an alias address", aliasShow)
			cmd.Command("create", "create a new alias address", aliasCreate)
			cmd.Command("update", "update an alias address", aliasUpdate)
			cmd.Command("delete", "delete an alias address", aliasDelete)
		})
	})
	// users
	c.Command("users", "list user accounts", usersList)
	// domain
	c.Command("domain", "manage domains", func(cmd *cli.Cmd) {
		cmd.Command("show", "show detailed information of a domain", domainShow)
		cmd.Command("create", "create a new domain", domainCreate)
		cmd.Command("update", "update a domain", domainUpdate)
		cmd.Command("delete", "delete a domain", domainDelete)
		cmd.Command("alias", "manage alias domains", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a domain alias", domainAliasShow)
			cmd.Command("create", "create a new domain alias", domainAliasCreate)
			cmd.Command("update", "update a domain alias", domainAliasUpdate)
			cmd.Command("delete", "delete a domain alias", domainAliasDelete)
		})
		cmd.Command("aliases", "list domain aliases", domainAliasList)
		cmd.Command("deliveryserver", "manage domain delivery servers", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a domain delivery server", domainDSShow)
			cmd.Command("create", "create a new domain delivery server", domainDSCreate)
			cmd.Command("update", "update a domain delivery server", domainDSUpdate)
			cmd.Command("delete", "delete a domain delivery server", domainDSDelete)
		})
		cmd.Command("deliveryservers", "list domain delivery servers", domainDSList)
		cmd.Command("userdeliveryserver", "manage user delivery servers", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a user delivery server", userDSShow)
			cmd.Command("create", "create a new user delivery server", userDSCreate)
			cmd.Command("update", "update a user delivery server", userDSUpdate)
			cmd.Command("delete", "delete a user delivery server", userDSDelete)
		})
		cmd.Command("userdeliveryservers", "list user delivery servers", userDSList)
		cmd.Command("authsetting", "manage authentication settings", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of an authentication setting", domainASShow)
			cmd.Command("create", "create a new authentication setting", domainASCreate)
			cmd.Command("update", "update a authentication setting", domainASUpdate)
			cmd.Command("delete", "delete a authentication setting", domainASDelete)
		})
		cmd.Command("authsettings", "list authentication settings", domainASList)
		cmd.Command("smarthost", "manage smarthosts", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a smarthost", domainSMShow)
			cmd.Command("create", "create a new smarthost", domainSMCreate)
			cmd.Command("update", "update a smarthost", domainSMUpdate)
			cmd.Command("delete", "delete a smarthost", domainSMDelete)
		})
		cmd.Command("smarthosts", "list smarthosts", domainSMList)
	})
	// domains
	c.Command("domains", "list domains", domainsList)
	// organization<commit_msg>FET: Add ldap and radius cmdline<commit_after>// BaruwaAPI Golang bindings for Baruwa REST API
// Copyright (C) 2019 <NAME> <<EMAIL>>

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this file,
// You can obtain one at http://mozilla.org/MPL/2.0/.

// Package cmd cmdline client for the Baruwa REST API
package cmd

import (
	cli "github.com/jawher/mow.cli"
)

// RegisterCommands registers all CLI commands
func (c *CLI) RegisterCommands() {
	// user
	c.Command("user", "manage user accounts", func(cmd *cli.Cmd) {
		cmd.Command("show", "show detailed information of a user account", userShow)
		cmd.Command("create", "create a new user account", userCreate)
		cmd.Command("update", "update a user account", userUpdate)
		cmd.Command("delete", "delete a user account", userDelete)
		cmd.Command("alias", "manage user alias addresses", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of an alias address", aliasShow)
			cmd.Command("create", "create a new alias address", aliasCreate)
			cmd.Command("update", "update an alias address", aliasUpdate)
			cmd.Command("delete", "delete an alias address", aliasDelete)
		})
	})
	// users
	c.Command("users", "list user accounts", usersList)
	// domain
	c.Command("domain", "manage domains", func(cmd *cli.Cmd) {
		cmd.Command("show", "show detailed information of a domain", domainShow)
		cmd.Command("create", "create a new domain", domainCreate)
		cmd.Command("update", "update a domain", domainUpdate)
		cmd.Command("delete", "delete a domain", domainDelete)
		cmd.Command("alias", "manage alias domains", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a domain alias", domainAliasShow)
			cmd.Command("create", "create a new domain alias", domainAliasCreate)
			cmd.Command("update", "update a domain alias", domainAliasUpdate)
			cmd.Command("delete", "delete a domain alias", domainAliasDelete)
		})
		cmd.Command("aliases", "list domain aliases", domainAliasList)
		cmd.Command("deliveryserver", "manage domain delivery servers", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a domain delivery server", domainDSShow)
			cmd.Command("create", "create a new domain delivery server", domainDSCreate)
			cmd.Command("update", "update a domain delivery server", domainDSUpdate)
			cmd.Command("delete", "delete a domain delivery server", domainDSDelete)
		})
		cmd.Command("deliveryservers", "list domain delivery servers", domainDSList)
		cmd.Command("userdeliveryserver", "manage user delivery servers", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a user delivery server", userDSShow)
			cmd.Command("create", "create a new user delivery server", userDSCreate)
			cmd.Command("update", "update a user delivery server", userDSUpdate)
			cmd.Command("delete", "delete a user delivery server", userDSDelete)
		})
		cmd.Command("userdeliveryservers", "list user delivery servers", userDSList)
		cmd.Command("authsetting", "manage authentication settings", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of an authentication setting", domainASShow)
			cmd.Command("create", "create a new authentication setting", domainASCreate)
			cmd.Command("update", "update a authentication setting", domainASUpdate)
			cmd.Command("delete", "delete a authentication setting", domainASDelete)
			cmd.Command("ldapsetting", "manage ldap settings", func(cmd *cli.Cmd) {
				cmd.Command("show", "show detailed information of an ldap setting", ldapShow)
				cmd.Command("create", "create a new ldap setting", ldapCreate)
				cmd.Command("update", "update a ldap setting", ldapUpdate)
				cmd.Command("delete", "delete a ldap setting", ldapDelete)
			})
			cmd.Command("radiussetting", "manage radius settings", func(cmd *cli.Cmd) {
				cmd.Command("show", "show detailed information of an radius setting", radiusShow)
				cmd.Command("create", "create a new radius setting", radiusCreate)
				cmd.Command("update", "update a radius setting", radiusUpdate)
				cmd.Command("delete", "delete a radius setting", radiusDelete)
			})
		})
		cmd.Command("authsettings", "list authentication settings", domainASList)
		cmd.Command("smarthost", "manage smarthosts", func(cmd *cli.Cmd) {
			cmd.Command("show", "show detailed information of a smarthost", domainSMShow)
			cmd.Command("create", "create a new smarthost", domainSMCreate)
			cmd.Command("update", "update a smarthost", domainSMUpdate)
			cmd.Command("delete", "delete a smarthost", domainSMDelete)
		})
		cmd.Command("smarthosts", "list smarthosts", domainSMList)
	})
	// domains
	c.Command("domains", "list domains", domainsList)
	// organization
{'fraction_non_alphanumeric': 0.13378270307323203, 'fraction_numerical': 0.0018279447046726837, 'mean_word_length': 5.156118143459915, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5782399', 'n_tokens_mistral': 2706, 'n_tokens_neox': 2474, 'n_words': 838}