use of org.eclipse.titan.executor.views.executormonitor.ComponentElement in project titan.EclipsePlug-ins by eclipse.
the class CliExecutor method processInfoOutputComponent.
/**
* Processes the component related part of the mctr_cli's answer to the info command.
* <p>
* @see #processInfoOutputHC(BufferedReader, MainControllerElement)
*
* @param stdout the output of the process to be parsed.
* @param host the host to add the component data to.
*/
private void processInfoOutputComponent(final BufferedReader stdout, final HostControllerElement host) {
Matcher matcher;
ComponentElement tempComponent;
matcher = HC_NAME_COMPONENT_PATTERN.matcher(fastLine);
if (matcher.matches()) {
tempComponent = new ComponentElement("Component " + matcher.group(1), new InformationElement("Component reference: " + matcher.group(2)));
host.addComponent(tempComponent);
readFullLineOnly(stdout);
} else {
matcher = HC_COMPONENT_PATTERN.matcher(fastLine);
if (matcher.matches()) {
tempComponent = new ComponentElement("Component " + matcher.group(1));
host.addComponent(tempComponent);
readFullLineOnly(stdout);
} else {
fastLine = null;
return;
}
}
if (fastLine != null && HC_COMPONENT_TYPE_PATTERN.matcher(fastLine).matches()) {
tempComponent.setTypeInfo(new InformationElement(fastLine.trim()));
readFullLineOnly(stdout);
}
if (fastLine != null && HC_COMPONENT_STATE_PATTERN.matcher(fastLine).matches()) {
tempComponent.setStateInfo(new InformationElement(fastLine.trim()));
readFullLineOnly(stdout);
} else {
fastLine = null;
return;
}
if (fastLine != null && HC_EXECUTED_PATTERN.matcher(fastLine).matches()) {
tempComponent.setExecutedInfo(new InformationElement(fastLine.trim()));
readFullLineOnly(stdout);
}
if (fastLine != null && HC_LOCAL_VERDICT_PATTERN.matcher(fastLine).matches()) {
tempComponent.setLocalVerdictInfo(new InformationElement(fastLine.trim()));
readFullLineOnly(stdout);
}
}
use of org.eclipse.titan.executor.views.executormonitor.ComponentElement in project titan.EclipsePlug-ins by eclipse.
the class JniExecutor method updateInfoDisplay.
/**
* Updates the information displayed about the MainController's and HostControllers actual states.
*/
private void updateInfoDisplay() {
JNIMiddleWare middleware = jnimw;
McStateEnum mcState = middleware.get_state();
MainControllerElement tempRoot = new MainControllerElement("Temporal root", this);
String mcStateName = middleware.get_mc_state_name(mcState);
tempRoot.setStateInfo(new InformationElement("state: " + mcStateName));
HostControllerElement tempHost;
ComponentStruct comp;
QualifiedName qualifiedName;
ComponentElement tempComponent;
StringBuilder builder;
int nofHosts = middleware.get_nof_hosts();
HostStruct host;
for (int i = 0; i < nofHosts; i++) {
host = middleware.get_host_data(i);
tempHost = new HostControllerElement("Host Controller: ");
tempRoot.addHostController(tempHost);
tempHost.setIPAddressInfo(new InformationElement("IP address: " + host.hostname));
tempHost.setIPNumberInfo(new InformationElement("IP number: " + host.ip_addr));
tempHost.setHostNameInfo(new InformationElement("Local host name:" + host.hostname_local));
tempHost.setOperatingSystemInfo(new InformationElement(host.system_name + " " + host.system_release + " " + host.system_version));
tempHost.setStateInfo(new InformationElement("State: " + middleware.get_hc_state_name(host.hc_state)));
int activeComponents = host.n_active_components;
int[] components = host.components.clone();
middleware.release_data();
for (int component_index = 0; component_index < activeComponents; component_index++) {
comp = middleware.get_component_data(components[component_index]);
tempComponent = new ComponentElement("Component: " + comp.comp_name, new InformationElement("Component reference: " + comp.comp_ref));
tempHost.addComponent(tempComponent);
qualifiedName = comp.comp_type;
if (qualifiedName != null && qualifiedName.definition_name != null) {
builder = new StringBuilder("Component type: ");
if (qualifiedName.module_name != null) {
builder.append(qualifiedName.module_name).append('.');
}
builder.append(qualifiedName.definition_name);
tempComponent.setTypeInfo(new InformationElement(builder.toString()));
}
tempComponent.setStateInfo(new InformationElement(middleware.get_tc_state_name(comp.tc_state)));
qualifiedName = comp.tc_fn_name;
if (qualifiedName.definition_name != null) {
builder = new StringBuilder(comp.comp_ref == 1 ? "test case" : "function");
if (qualifiedName.module_name != null) {
builder.append(qualifiedName.module_name).append('.');
}
builder.append(qualifiedName.definition_name);
tempComponent.setExecutedInfo(new InformationElement(builder.toString()));
}
VerdictTypeEnum localVerdict = comp.local_verdict;
if (localVerdict != null) {
builder = new StringBuilder("local verdict: ");
builder.append(localVerdict.getName());
}
}
}
middleware.release_data();
if (mainControllerRoot != null) {
mainControllerRoot.children().clear();
mainControllerRoot.transferData(tempRoot);
}
if (Activator.getMainView() != null) {
Activator.getMainView().refreshAll();
}
}
Aggregations