|
From: <bh...@us...> - 2006-10-27 20:21:47
|
Revision: 328
http://svn.sourceforge.net/cishell/?rev=328&view=rev
Author: bh2
Date: 2006-10-27 13:21:33 -0700 (Fri, 27 Oct 2006)
Log Message:
-----------
cleaned up input parameter printing in the console
Modified Paths:
--------------
trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmAction.java
trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmWrapper.java
Modified: trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmAction.java
===================================================================
--- trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmAction.java 2006-10-27 19:54:39 UTC (rev 327)
+++ trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmAction.java 2006-10-27 20:21:33 UTC (rev 328)
@@ -75,38 +75,7 @@
//save the current data
Data[] data = this.data;
Converter[][] converters = this.converters;
-
- //Print out acknowledge info. Not sure this is the right place.
- //But it seems working fine.
- LogService logger = (LogService) ciContext.getService(LogService.class.getName());
-
- String label = (String)ref.getProperty("label");
- if (label != null){
- logger.log(LogService.LOG_INFO, "..........");
- logger.log(LogService.LOG_INFO, label+" was selected.");
- }
- String authors = (String)ref.getProperty("authors");
- if (authors != null)
- logger.log(LogService.LOG_INFO, "Author(s): "+authors);
- String implementers = (String)ref.getProperty("implementers");
- if (implementers != null)
- logger.log(LogService.LOG_INFO, "Implementer(s): "+implementers);
- String integrators = (String)ref.getProperty("integrators");
- if (integrators != null)
- logger.log(LogService.LOG_INFO, "Integrator(s): "+integrators);
- String reference = (String)ref.getProperty("reference");
- String reference_url = (String)ref.getProperty("reference_url");
- if (reference != null && reference_url != null )
- logger.log(LogService.LOG_INFO, "Reference: "+reference+
- " ( "+reference_url+" )");
- else if (reference != null && reference_url == null )
- logger.log(LogService.LOG_INFO, "Reference: "+reference);
- String docu = (String)ref.getProperty("docu");
- if (docu != null)
- logger.log(LogService.LOG_INFO, "Docu: "+docu);
-///////////////////////////
-
SchedulerService scheduler = (SchedulerService)
bContext.getService(bContext.getServiceReference(
SchedulerService.class.getName()));
@@ -116,6 +85,8 @@
AlgorithmFactory factory = (AlgorithmFactory) bContext.getService(ref);
MetaTypeProvider provider = factory.createParameters(null);
String pid = (String)ref.getProperty(Constants.SERVICE_PID);
+
+ printAlgorithmInformation();
Dictionary params = new Hashtable();
if (provider != null) {
@@ -123,13 +94,43 @@
}
if (params != null) {
- scheduler.schedule(new AlgorithmWrapper(ref, bContext, ciContext, originalData, data, converters, params), ref);
+ scheduler.schedule(new AlgorithmWrapper(ref, bContext, ciContext, originalData, data, converters, provider, params), ref);
}
} catch (Throwable e) {
e.printStackTrace();
}
}
+ private void printAlgorithmInformation() {
+ LogService logger = (LogService) ciContext.getService(LogService.class.getName());
+
+ String label = (String)ref.getProperty("label");
+ if (label != null){
+ logger.log(LogService.LOG_INFO, "..........");
+ logger.log(LogService.LOG_INFO, label+" was selected.");
+ }
+ String authors = (String)ref.getProperty("authors");
+ if (authors != null)
+ logger.log(LogService.LOG_INFO, "Author(s): "+authors);
+ String implementers = (String)ref.getProperty("implementers");
+ if (implementers != null)
+ logger.log(LogService.LOG_INFO, "Implementer(s): "+implementers);
+ String integrators = (String)ref.getProperty("integrators");
+ if (integrators != null)
+ logger.log(LogService.LOG_INFO, "Integrator(s): "+integrators);
+ String reference = (String)ref.getProperty("reference");
+ String reference_url = (String)ref.getProperty("reference_url");
+ if (reference != null && reference_url != null )
+ logger.log(LogService.LOG_INFO, "Reference: "+reference+
+ " ( "+reference_url+" )");
+ else if (reference != null && reference_url == null )
+ logger.log(LogService.LOG_INFO, "Reference: "+reference);
+ String docu = (String)ref.getProperty("docu");
+ if (docu != null)
+ logger.log(LogService.LOG_INFO, "Docu: "+docu);
+
+ }
+
public void dataSelected(Data[] selectedData) {
String inDataString = (String)ref.getProperty(IN_DATA);
String[] inData = ("" + inDataString).split(",");
Modified: trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmWrapper.java
===================================================================
--- trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmWrapper.java 2006-10-27 19:54:39 UTC (rev 327)
+++ trunk/clients/gui/org.cishell.reference.gui.menumanager/src/org/cishell/reference/gui/menumanager/menu/AlgorithmWrapper.java 2006-10-27 20:21:33 UTC (rev 328)
@@ -16,7 +16,9 @@
import java.util.ArrayList;
import java.util.Dictionary;
import java.util.Enumeration;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.cishell.app.service.datamanager.DataManagerService;
import org.cishell.framework.CIShellContext;
@@ -28,8 +30,12 @@
import org.cishell.service.conversion.Converter;
import org.cishell.service.guibuilder.GUIBuilderService;
import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
import org.osgi.framework.ServiceReference;
import org.osgi.service.log.LogService;
+import org.osgi.service.metatype.AttributeDefinition;
+import org.osgi.service.metatype.MetaTypeProvider;
+import org.osgi.service.metatype.ObjectClassDefinition;
public class AlgorithmWrapper implements Algorithm, AlgorithmProperty {
@@ -40,10 +46,13 @@
protected Data[] data;
protected Converter[][] converters;
protected Dictionary parameters;
+ protected Map idToLabelMap;
+ protected MetaTypeProvider provider;
public AlgorithmWrapper(ServiceReference ref, BundleContext bContext,
CIShellContext ciContext, Data[] originalData, Data[] data,
- Converter[][] converters, Dictionary parameters) {
+ Converter[][] converters, MetaTypeProvider provider,
+ Dictionary parameters) {
this.ref = ref;
this.bContext = bContext;
this.ciContext = ciContext;
@@ -51,6 +60,8 @@
this.data = data;
this.converters = converters;
this.parameters = parameters;
+ this.provider = provider;
+ this.idToLabelMap = new HashMap();
}
/**
@@ -68,19 +79,7 @@
AlgorithmFactory factory = (AlgorithmFactory) bContext.getService(ref);
Algorithm alg = factory.createAlgorithm(data, parameters, ciContext);
- LogService logger = getLogService();
- if (logger != null) {
- if (!this.parameters.isEmpty()) {
- logger.log(LogService.LOG_INFO, "");
- logger.log(LogService.LOG_INFO, "Input Parameters:");
- for (Enumeration e = this.parameters.keys(); e
- .hasMoreElements();) {
- String key = (String) e.nextElement();
- logger.log(LogService.LOG_INFO, key + ": "
- + this.parameters.get(key));
- }
- }
- }
+ printParameters();
Data[] outData = alg.execute();
@@ -117,6 +116,49 @@
}
}
+ protected void printParameters() {
+ LogService logger = getLogService();
+ setupIdToLabelMap();
+
+ if (logger != null) {
+ if (!this.parameters.isEmpty()) {
+ logger.log(LogService.LOG_INFO, "");
+ logger.log(LogService.LOG_INFO, "Input Parameters:");
+ for (Enumeration e = this.parameters.keys(); e
+ .hasMoreElements();) {
+ String key = (String) e.nextElement();
+ Object value = this.parameters.get(key);
+
+ key = (String) idToLabelMap.get(key);
+
+ logger.log(LogService.LOG_INFO, key+": "+value);
+ }
+ }
+ }
+ }
+
+ protected void setupIdToLabelMap() {
+ if (provider != null) {
+ ObjectClassDefinition ocd = null;
+ try {
+ String pid = (String) ref.getProperty(Constants.SERVICE_PID);
+ ocd = provider.getObjectClassDefinition(pid, null);
+
+ if (ocd != null) {
+ AttributeDefinition[] attr =
+ ocd.getAttributeDefinitions(ObjectClassDefinition.ALL);
+
+ for (int i=0; i < attr.length; i++) {
+ String id = attr[i].getID();
+ String label = attr[i].getName();
+
+ idToLabelMap.put(id, label);
+ }
+ }
+ } catch (IllegalArgumentException e) {}
+ }
+ }
+
//only does anything if parentage=default so far...
protected void doParentage(Data[] outData) {
//make sure the parent set is the original Data and not the
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|