]
Brian Stansberry commented on WFCORE-1939:
------------------------------------------
I've attached the output of an IDEA search for all uses of the
SimpleOperationDefinitionBuilder class, which is what builds the metadata describing an
operation. This is a simple way to identify custom operations. I figure custom operations
are what's most relevant here, as params to operations like 'add' that refer
to outside resources should use capability-driven references.
I didn't edit the output at all, but if I had i'd have removed all but the
"New instance creation". And I would perhaps remove everything not from the
maven modules that represent subsystems, ignoring the kernel stuff for now. (The kernel
stuff introduces a lot of noise.) That still leaves quite a few things but I think
you'll find that the large majority of what's left doesn't involve any params
pointing to external items; they are just simple ops against the target resource.
Tabulator in CLI could suggest actual values for attributes for
operations
--------------------------------------------------------------------------
Key: WFCORE-1939
URL:
https://issues.jboss.org/browse/WFCORE-1939
Project: WildFly Core
Issue Type: Feature Request
Components: CLI, Domain Management
Reporter: Miroslav Novak
Assignee: Jean-Francois Denise
Labels: user_experience
Attachments: SimpleOperationDefinitionBuilder.txt
There are number of cases where is necessary to execute CLI operation to actually get
value for attribute to another CLI operation. For example I want to list all messages for
subscription on the topic then it's necessary to get names of all subscriptions by:
{code}
[standalone@172.16.10.17:9990 /]
/subsystem=messaging-activemq/server=default/jms-topic=HQ_ProductFamilyT23:list-all-subscriptions
{
"outcome" => "success",
"result" => [
{
"durable" => true,
"queueName" =>
"172\\.16\\.10\\.15_VM1_SPAgent55_0.SP_CallForOffersEH_55_EHID_1PF4",
"clientID" => "172.16.10.15_VM1_SPAgent55_0",
"messageCount" => 0,
"deliveringCount" => 0,
"name" => "SP_CallForOffersEH_55_EHID_1PF4",
"consumers" => [{
"creationTime" => 1478261489444L,
"consumerID" => 4,
"browseOnly" => false,
"connectionID" => "-1638816479",
"sessionID" =>
"d1149360-a287-11e6-bb34-97e27f67b29e"
}]
},
{
"durable" => true,
"queueName" =>
"172\\.16\\.10\\.18_VM1_SPAgent23_0.SP_CallForOffersEH_23_EHID_1PF0",
"clientID" => "172.16.10.18_VM1_SPAgent23_0",
"messageCount" => 0,
"deliveringCount" => 0,
"name" => "SP_CallForOffersEH_23_EHID_1PF0",
"consumers" => [{
"creationTime" => 1478261516648L,
"consumerID" => 0,
"browseOnly" => false,
"connectionID" => "-1794279882",
"sessionID" =>
"e14e5343-a287-11e6-9311-4d8e66b2ef14"
}]
}
]
}
{code}
so name of subscription {{SP_CallForOffersEH_55_EHID_1PF4}} could be used in: {code}
[standalone@172.16.10.17:9990 /]
/subsystem=messaging-activemq/server=default/jms-topic=HQ_ProductFamilyT23:list-messages-for-subscription(queue-name=SP_CallForOffersEH_55_EHID_1PF4){code}
The improvement would allow to just press tab in: {code}
[standalone@172.16.10.17:9990 /]
/subsystem=messaging-activemq/server=default/jms-topic=HQ_ProductFamilyT23:list-messages-for-subscription(queue-name=...
<-- tab here would suggest which queues are available {code}
and it would suggest queue names of available subscriptions.
There are more places like this - for example :
{code}
/subsystem=messaging-activemq/server=default:rollback-prepared-transaction(transaction-as-base-64=...
<-- tab here
{code}
would provide available prepared transactions which can be commit.