Synopsis:	command [add --node-type=node_path_to_the_type --property-id=identifying_property --command-name=name_for_the_command |
					remove --command_name=command_to_remove |
					list]

Description:	Allows to add new, remove and list existing type generic commands.
				A type generic command is a command that is assigned to a specific node type
				and which allows to perform any operation available for an instance of that type
				and/or modify any of the properties exposed by the type on any existing instance of the type.
				
				For example, suppose there is a generic type command assigned to type /subsystem=datasources/data-source
				and named data-source. Every generic type command must also no a property name that could be used
				to identify an instance of the type. For the data-source example, it could be jndi-name.
				
				Now, you can invoke operations on any existing data source using data-source command like this
				
				data-source flush-all-connection-in-pool --jndi-name=myds
				
				where flush-all-connection-in-pool is an operation name exposed by data-source type and jndi-name
				is the property name that identifies the specific datasource to perform the operation on.
				If the operation has properties, they can be added as command line arguments by prefixing property names
				with '--' and supplying the values after '='. E.g. This is how a new datasource could be added
				
				data-source add --jndi-name=my-new-ds --driver-name=h2 --connection-url=db:url --pool-name=my-ds-pool
				
				To modify properties of an existing type instance, just use property names as arguments
				like the operation arguments in the example above. E.g.
				
				data-source --jndi-name=my-new-ds --min-pool-size=11 --max-pool-size=22
				
				Tab-completion will help completing operation and property names.
				
				Generic type commands support --help option. The content of the help will be fetched from the
				description of operations and properties provided by the model on the server. E.g.
				
				data-source --help					# describes the type itself
				data-source --help --commands		# will list all the operations exposed by the type
				data-source --help --properties		# will list all the properties exposed by the type
				data-source	flush-all-connection-in-pool --help		# will describe the specific operation, in this case flush-all-connection-in-pool
				

Arguments:

	add			- adds a new generic type command. The following arguments are required to add a new command:
					--node-type		- is a node path to the type to create the command for. Naturally, the path must
									end on a type.
					--property-id	- a property name that should be used to identify instances of the type.
					--command-name	- the name for the command.
					
	remove		- removes an existing generic type command. There is a single required argument --command-name
				which identifies the command that should be removed.
				
	list		- lists existing generic type commands.