<DRAFT>

ROOTS Console Interface

  1. ROOTS Console Interface
    1. Introduction
    2. Provided ROOTS targets

Introduction

The purpose of this document is to provide a guide for application programmers to use the remote interface of ROOTS with non Java clients. For that, the text-based web service operations of the remote interface are described to build own clients. To understood this document the reader must be familiar with the ROOTS Type System.

ROOTS Console Interface for string target execution on the ROOTS server is represented by IStringTargetExecution interface.
Each ROOTS server target must provide this interface. Target services are registered using the remote.target property to define the target they operate on.
A target service must either provide the IStringExecution or the IPropertyExecution interface.

IStringTargetExecutionFactory is an interface of the property execution client factory for string execution client handles.
To execute properties on the specific target of the ROOTS server one IStringTargetExecution object must be created by IStringTargetExecutionFactory.
Afterward the method
String execute(String target, String properties)
must be invoked on this IStringTargerExecution object to execute properties on the ROOTS server.

target is a String parameter that specifies the string execution service on the server.

properties is a String representation of a SersMap<?> object that contains properties needed for target specific execution.
SersMap is an StrSerialized map implementation defined in bundle biz.kachel.roots.strobjects.types.
SersMapFactory service can be used to create new SersMap<?> objects.
Some targets expect subtarget property that specifies the kind of the application request.

Result of the execute method is also String representation of an SersMap<?> object.
In bundle biz.kachel.roots.remote.basic.common.util useful utility classes can be found for encapsulate converting Strings parameters to SersMap and vice versa.

Actually there are two implementations provided by ROOTS:
InprocessClient (InProcess client for ROOTS internal usage) and PropertyExecutionClientFactory (based on Hessian web service protocol).

In following chapter available targets are described with expected input properties and properties of the result SersMap.
The text constants are written in bold letter, parameter names in italic letters.

Provided ROOTS targets

This chapter described expected input properties and result of all available ROOTS targets implementing IStringTargetExecution:

IStringTargetExecution String execute(String target, String properties) ...

As described in the introduction, properties is a String representation of an SersMap object, also the result String.

Following targets are available in ROOTS server:

Der drüber stehende Satz "Name and type of ..." müsste bündig zu "Required properties in properties ... stehen, weil er NICHT zum
Unterpunkt hosr.address sondern zum Punkt target = console.login gehört. Bekomme ich aber nicht hin :-(

For all following targets described in this section the session identifier must be given as a property in properties:

subtarget
property value
name of
input property
value type of
input property
name of
result property
value type of
result property
operation
LIST - - result Collection<ClientApplicationInfo> list all applications
INSTALL app String - - install an application
UNINSTALL app String - - uninstall an application
START app String - - start an application
STOP app String - - stop an application
ABUNDLES - - result Collection<ApplicationBundlesModel> provide the bundles of the applications
subtarget
property value
names of
input properties
value types of
input properties
names of
result properties
value types of
result properties
operation
EVENT_COMPONENT - - result Collection<EventComponentModel> provide the list of registered event components
PROCESSOR - - result Collection<ProcessorModel> provide the list of registered event processors
HINO_CHILDREN HinoNodePar Long (Hino node id) result HinoNodeModel[] provide children to given Hino node
HINO_ADD_CHILD HinoNodePar
HinoNodePar2
Long (Hino node id)
String (node name)
- - add a sub node to a given Hino node
HINO_REMOVE_NODE HinoNodePar Long (Hino node id) - - remove a given Hino node
HINO_RENAME_NODE HinoNodePar
HinoNodePar2
Long (Hino node id)
String (new node name)
- - rename a given Hino node
HINO_ADD_PROPERTY HinoNodePar
HinoNodePar2
HinoNodePar3
HinoNodePar4
Long (Hino node id)
String (property name)
String (property value)
String (property type name)
- - add new node property
HINO_PROPERTIES HinoNodePar Long (Hino node id) result Collection<HinoPropertyModel> provide properties of a given Hino node
HINO_REMOVE_PROPERTY HinoNodePar
HinoNodePar2
Long (Hino node id)
String (node name)
- - remove a specified property of a given Hino node
HINO_EDIT_PROPERTY HinoNodePar
HinoNodePar2
HinoNodePar3
HinoNodePar4
Long (Hino node id)
String (property name)
String (property new name)
String (property value)
- - change name and value of a specified property of a given Hino node
PROCESSES ProcessFilter String result Collection<ProcessModel> provide information about processes

Es wird zwar die InputProperty "ProcessFilter" von Typ String ausgelesen (Defaultwert = "Aktive Prozesse"), aber sie wird nicht weiter verarbeitet;
Es werden z.Z. alle Prozesse zurück geliefert.

PROCESS_FILTER - - result Collection<String> provide the list of available process filter
TERMINATE_PROCESS HinoNodePar SID - - terminate the process
RESET_PROCESS HinoNodePar SID - - reset the process state
COMPONENT_STATUS - - result Collection<ECPComponentModel> provide the ECP component states
CONCURRENCY - - result Collection<ConcurrencyModel> provide the concurrency states
HINO_EXPORTED_NODES - - result Collection<String> provide the names of the exported Hino nodes
HINO_NODE_EXPORT HinoNodePar HinoNodeExportInformation - - export a hino node by writing its model to disk
HINO_NODE_IMPORT HinoNodePar HinoNodeImportInformation - - import a Hino node model from disk
subtarget
property value
name of
input property
value type of
input property
name of
result property
value type of
result property
operation
LICENSE - - result Collection<LicenseModel> license informations
OVERVIEW - - result SersMap<OverviewFieldNames> overview data for roots console
UNINSTALL - - result Collection<StatisticsModel> statistics data of roots server