|
From: <kon...@us...> - 2010-12-16 22:44:14
|
Revision: 1179
http://cishell.svn.sourceforge.net/cishell/?rev=1179&view=rev
Author: kongchinhua
Date: 2010-12-16 22:44:07 +0000 (Thu, 16 Dec 2010)
Log Message:
-----------
Add executeAlgorithm() to AlgorithmUtilities class to support non-progress monitoring execution
Fix Database ISI loading issue on Load and Clean
Change the Generic load to use Load and Clean by default
Remove Load and Clean ISI from menu
Create PrettyLabels method to support hierarchy labeling
Reviewed by Micah
Modified Paths:
--------------
trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/FileLoadAlgorithm.java
trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/PrettyLabeler.java
trunk/core/org.cishell.utilities/.project
trunk/core/org.cishell.utilities/src/org/cishell/utilities/AlgorithmUtilities.java
trunk/core/org.cishell.utilities/src/org/cishell/utilities/FileUtilities.java
Modified: trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/FileLoadAlgorithm.java
===================================================================
--- trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/FileLoadAlgorithm.java 2010-12-13 18:48:52 UTC (rev 1178)
+++ trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/FileLoadAlgorithm.java 2010-12-16 22:44:07 UTC (rev 1179)
@@ -130,7 +130,8 @@
}
private Data[] labelFileData(File file, Data[] validatedFileData) {
- Data[] labeledFileData = PrettyLabeler.relabelWithFileName(validatedFileData, file);
+ Data[] labeledFileData = PrettyLabeler.relabelWithFileNameHierarchy(
+ validatedFileData, file);
return labeledFileData;
}
Modified: trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/PrettyLabeler.java
===================================================================
--- trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/PrettyLabeler.java 2010-12-13 18:48:52 UTC (rev 1178)
+++ trunk/clients/gui/org.cishell.reference.gui.persistence/src/org/cishell/reference/gui/persistence/load/PrettyLabeler.java 2010-12-16 22:44:07 UTC (rev 1179)
@@ -41,4 +41,44 @@
return newData.toArray(new Data[0]);
}
+
+ /**
+ * Support Hierarchy structure labeling. The algorithm will avoid labeling
+ * on children.
+ * @param data - data that need to relabel
+ * @param file - file that contains filename to be used for relabeling
+ * @return the processed data with new labels
+ */
+ public static Data[] relabelWithFileNameHierarchy(Data[] data, File file) {
+ File absoluteFile = file.getAbsoluteFile();
+ File parent = absoluteFile.getParentFile();
+
+ String prefix;
+ String parentName = parent.getName();
+ if (parentName.trim().length() == 0) {
+ prefix = File.separator;
+ } else {
+ prefix = "..." + File.separator + parentName + File.separator;
+ }
+
+ Collection<Data> possibleParents = new ArrayList<Data>(data.length);
+
+ for (Data datum : data) {
+ Dictionary<String, Object> labeledDatumMetadata = datum.getMetadata();
+ Data dataParent = getParent(labeledDatumMetadata);
+ if (!possibleParents.contains(dataParent)) {
+ labeledDatumMetadata.put(DataProperty.LABEL, prefix + absoluteFile.getName());
+ }
+ possibleParents.add(datum);
+ }
+
+ return data;
+ }
+
+ /*
+ * Get the parent of the data
+ */
+ private static Data getParent(Dictionary<String, Object> labeledDatumMetadata) {
+ return (Data) labeledDatumMetadata.get(DataProperty.PARENT);
+ }
}
\ No newline at end of file
Modified: trunk/core/org.cishell.utilities/.project
===================================================================
--- trunk/core/org.cishell.utilities/.project 2010-12-13 18:48:52 UTC (rev 1178)
+++ trunk/core/org.cishell.utilities/.project 2010-12-16 22:44:07 UTC (rev 1179)
@@ -20,9 +20,15 @@
<arguments>
</arguments>
</buildCommand>
+ <buildCommand>
+ <name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
</natures>
</projectDescription>
Modified: trunk/core/org.cishell.utilities/src/org/cishell/utilities/AlgorithmUtilities.java
===================================================================
--- trunk/core/org.cishell.utilities/src/org/cishell/utilities/AlgorithmUtilities.java 2010-12-13 18:48:52 UTC (rev 1178)
+++ trunk/core/org.cishell.utilities/src/org/cishell/utilities/AlgorithmUtilities.java 2010-12-16 22:44:07 UTC (rev 1179)
@@ -117,6 +117,9 @@
}
}
+ /*
+ * Use this to execute algorithm with progress monitoring
+ */
@SuppressWarnings("unchecked") // Dictionary<String, Object>
public static Data[] executeAlgorithm(
AlgorithmFactory algorithmFactory,
@@ -136,4 +139,17 @@
return result;
}
+
+ /*
+ * Use this to execute algorithm without progress monitoring
+ */
+ public static Data[] executeAlgorithm(
+ AlgorithmFactory algorithmFactory,
+ Data[] data,
+ Dictionary parameters,
+ CIShellContext ciShellContext)
+ throws AlgorithmExecutionException {
+
+ return executeAlgorithm(algorithmFactory, null, data, parameters, ciShellContext);
+ }
}
\ No newline at end of file
Modified: trunk/core/org.cishell.utilities/src/org/cishell/utilities/FileUtilities.java
===================================================================
--- trunk/core/org.cishell.utilities/src/org/cishell/utilities/FileUtilities.java 2010-12-13 18:48:52 UTC (rev 1178)
+++ trunk/core/org.cishell.utilities/src/org/cishell/utilities/FileUtilities.java 2010-12-16 22:44:07 UTC (rev 1179)
@@ -367,7 +367,7 @@
}
if (!extension.startsWith(".")) {
- extension = extension + ".";
+ extension = "." + extension;
}
String tempPath = System.getProperty("java.io.tmpdir");
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|