[jboss-as7-dev] CLI new (generic type) commands

Brian Stansberry brian.stansberry at redhat.com
Wed Sep 28 12:33:12 EDT 2011


See comments in-line; references are to 
http://community.jboss.org/docs/DOC-16317

On 7/1/11 10:50 AM, Alexey Loubyansky wrote:
> So, I've pushed the prototype for the new approach.
> http://community.jboss.org/wiki/GenericTypeCLICommands
>
>
> Advantages
>
> - any changes in the management model (added/removed operations,
> properties, etc) become immediately available in CLI commands without
> code changes in the CLI;
>
> - command help content is generated from the description of type,
> operations and properties in the management model (so, no text
> duplication, localization, etc);
>
> - commands can be added and removed at runtime and customized by the user;
>
> -the total number of cli commands will decrease and they, in a way, will
> be better categorized.
>
>
> Disadvantages
>
> Tab-completion suffers from insufficient info in the management model
> about the types, values and relationships/dependencies between the node
> and operation properties.
>
> - enumeration values, if the type is boolean, I can do it, but if it's
> something else (e.g. tx isolation) the allowed values would have to be
> specified in the management model for the type in fixed format;
>

See "allowed" under "Arbitrary Descriptors". If you find spots where 
this is missing, let me or the subsystem owner know, or go ahead and fix it.

> - exclusive properties, e.g. driver-class/driver-name for datasources.
> If I code the data-source command myself I can automatically exclude one
> if the other one has been specified;
>

See "alternatives" (and related "requires") under "Description of an 
Attribute" and "Description of an Operation Parameter or Return Value".

> - referencing properties, e.g. driver-name accepts values that are
> registered jdbc driver names, for that to tab-complete, this reference
> would have to be described in the model.
>

I think we'll have to live with this one for 7.1 (and maybe forever.) 
The rules are not always simple. For example, the web subsystem has a 
ref to a socket-binding. Simple enough in the standalone case, but in 
the domain case, profiles and socket binding groups can be independently 
mapped to a server group.

> There are probably other things that I forgot to mention. I'll follow up
> if I remember something.
>
> As always, feedback, ideas, suggestions are welcome.
>
> Thanks,
> Alexey
>
> PS: it's not yet in the master as I send it, I did send the pull request
> though, so, it's gonna be soon.
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev


-- 
Brian Stansberry
Principal Software Engineer
JBoss by Red Hat


More information about the jboss-as7-dev mailing list