]
Brian Stansberry commented on WFCORE-721:
-----------------------------------------
Possibly the ModelNode to CLI transformation could deal with a few well known commands as
well. For example
{code}
{ "operation" => "reload"}
{code}
becomes the CLI "reload" command instead of the "/:reload" low level
operation.
Same thing with shutdown.
I'm not suggesting any broadly scoped DMR to high-level-command facility. This is
really about the few operations that result in breaking the CLI's connection to the
server. The high level CLI commands deal with that properly.
Create a ModelNode to CLI call transformation facility
------------------------------------------------------
Key: WFCORE-721
URL:
https://issues.jboss.org/browse/WFCORE-721
Project: WildFly Core
Issue Type: Feature Request
Components: Domain Management
Reporter: Jason Greene
Assignee: Ken Wills
Add a transformation function that can convert a ModelNode representation of an operation
into a CLI low level operation. In the case of a composite operation, this should result
in a CLI batch command with multiple CLI low level operations.
This capability involves introducing a transformation API (ModelNodeTransformer?), and
perhaps an SPI to support pluggable transformation algorithms.
Future transformations might be:
- Java code - Transformation of a ModelNode based management operation into Java code
using the jboss-dmr API to build a ModelNode and use the ModelController client API
- Python code - Transformation of a ModelNode based management operation into Python code
that builds a JSON representation of the model node and some demo code calling an HTTP API
in python to make the invocation
- Curl code - Transformation of a ModelNode based management operation into a curl
statement(s) that can be cut and paste into a console
- XHR JS code - Transformation of a ModelNode based management operation into JS XHR
calls
This functionality belongs in a new library, and once completed should be directly ported
to HAL(console) as a prototype (this would enable HAL to record and display operations,
CLI calls, or even code of the work performance based on user selection)