diff --git a/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamNewDefinitionPage.java b/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamNewDefinitionPage.java index b4a8cfd1cb..61a6273335 100644 --- a/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamNewDefinitionPage.java +++ b/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamNewDefinitionPage.java @@ -41,18 +41,16 @@ import org.eclipse.swt.widgets.TableColumn; import org.eclipse.swt.widgets.TableItem; import org.eclipse.swt.widgets.Text; -import com.raytheon.uf.common.serialization.SerializationUtil; +import com.raytheon.uf.common.serialization.JAXBManager; import com.raytheon.uf.common.serialization.adapters.UnitAdapter; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; -import com.raytheon.uf.viz.core.status.StatusConstants; import com.raytheon.uf.viz.derivparam.library.DerivParamConstantField; import com.raytheon.uf.viz.derivparam.library.DerivParamDesc; import com.raytheon.uf.viz.derivparam.library.DerivParamField; import com.raytheon.uf.viz.derivparam.library.DerivParamMethod; import com.raytheon.uf.viz.derivparam.library.IDerivParamField; -import com.raytheon.uf.viz.derivparam.ui.Activator; import com.raytheon.viz.ui.dialogs.CaveSWTDialog; import com.raytheon.viz.ui.dialogs.CaveSWTWizardPage; @@ -74,7 +72,8 @@ import com.raytheon.viz.ui.dialogs.CaveSWTWizardPage; */ public class DerivedParamNewDefinitionPage extends CaveSWTWizardPage { - private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(DerivedParamNewDefinitionPage.class); + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(DerivedParamNewDefinitionPage.class); /* SWT Widgets */ private Text nameText; @@ -125,10 +124,10 @@ public class DerivedParamNewDefinitionPage extends CaveSWTWizardPage { desc.addMethod((DerivParamMethod) ti.getData()); } try { - return SerializationUtil.marshalToXml(desc); + return new JAXBManager(DerivParamDesc.class).marshalToXml(desc); } catch (JAXBException e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); + statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), + e); return null; } } diff --git a/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamWizard.java b/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamWizard.java index 8c98bad6e0..04aeb1124b 100644 --- a/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamWizard.java +++ b/cave/com.raytheon.uf.viz.derivparam.ui/src/com/raytheon/uf/viz/derivparam/ui/dialogs/DerivedParamWizard.java @@ -31,15 +31,13 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; -import com.raytheon.uf.viz.core.status.StatusConstants; import com.raytheon.uf.viz.derivparam.library.DerivedParameterGenerator; -import com.raytheon.uf.viz.derivparam.ui.Activator; import com.raytheon.uf.viz.localization.LocalizationPerspectiveUtils; import com.raytheon.uf.viz.localization.service.ILocalizationService; import com.raytheon.viz.ui.dialogs.CaveSWTWizard; /** - * TODO Add Description + * Wizard for generating derived paramters * *
* @@ -47,7 +45,8 @@ import com.raytheon.viz.ui.dialogs.CaveSWTWizard; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Dec 16, 2010 mschenke Initial creation + * Dec 16, 2010 mschenke Initial creation + * Sep 17, 2013 2285 mschenke Fixed serialization of DerivParamDesc * ** @@ -56,7 +55,8 @@ import com.raytheon.viz.ui.dialogs.CaveSWTWizard; */ public class DerivedParamWizard extends CaveSWTWizard { - private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(DerivedParamWizard.class); + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(DerivedParamWizard.class); private DerivedParamNewDefinitionPage newDefinitionPage; @@ -113,15 +113,15 @@ public class DerivedParamWizard extends CaveSWTWizard { file.save(); functionFile = file; } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); + statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), + e); } } String definitionContents = newDefinitionPage.createDefinition(); if (definitionContents != null) { String fileName = newDefinitionPage.getAbbreviation() + ".xml"; - String path = DerivedParameterGenerator.XML_DIR + File.separator - + fileName; + String path = DerivedParameterGenerator.XML_DIR + + IPathManager.SEPARATOR + fileName; LocalizationFile file = pm.getLocalizationFile(userCtx, path); File f = file.getFile(); if (f.exists()) { @@ -132,8 +132,8 @@ public class DerivedParamWizard extends CaveSWTWizard { file.save(); definitionFile = file; } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); + statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), + e); } } diff --git a/cave/com.raytheon.uf.viz.localization.perspective/src/com/raytheon/uf/viz/localization/perspective/view/FileTreeView.java b/cave/com.raytheon.uf.viz.localization.perspective/src/com/raytheon/uf/viz/localization/perspective/view/FileTreeView.java index 73699f3b3a..091c824fa0 100644 --- a/cave/com.raytheon.uf.viz.localization.perspective/src/com/raytheon/uf/viz/localization/perspective/view/FileTreeView.java +++ b/cave/com.raytheon.uf.viz.localization.perspective/src/com/raytheon/uf/viz/localization/perspective/view/FileTreeView.java @@ -93,13 +93,13 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.LocalizationNotificationObserver; -import com.raytheon.uf.common.localization.LocalizationUtil; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.localization.exception.LocalizationOpFailedException; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.viz.core.VizApp; +import com.raytheon.uf.viz.core.exception.VizException; import com.raytheon.uf.viz.core.localization.LocalizationManager; import com.raytheon.uf.viz.localization.LocalizationEditorInput; import com.raytheon.uf.viz.localization.LocalizationPerspectiveUtils; @@ -129,10 +129,11 @@ import com.raytheon.uf.viz.localization.service.ILocalizationService; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 26, 2010 mnash Initial creation - * Feb 13, 2013 1610 mschenke Fixed null pointer by repopulating LocalizationFileGroupData - * objects even if they weren't expanded - * May 1st, 2013 1967 njensen Fix for pydev 2.7 + * May 26, 2010 mnash Initial creation + * Feb 13, 2013 1610 mschenke Fixed null pointer by repopulating LocalizationFileGroupData + * objects even if they weren't expanded + * May 1, 2013 1967 njensen Fix for pydev 2.7 + * Sep 17, 2013 2285 mschenke Made openFile refresh items if file not found * * * @@ -838,22 +839,13 @@ public class FileTreeView extends ViewPart implements IPartListener2, if (data instanceof LocalizationFileEntryData) { toDelete.add(((LocalizationFileEntryData) data) .getFile()); - } else if (data.isDirectory()) { - String[] parts = LocalizationUtil.splitUnique(data - .getPath()); - String parentDir = parts[0]; - for (int i = 1; i < parts.length - 1; ++i) { - parentDir += IPathManager.SEPARATOR + parts[i]; + } else if (data instanceof LocalizationFileGroupData) { + for (LocalizationFileEntryData child : ((LocalizationFileGroupData) data) + .getChildrenData()) { + toDelete.add(child.getFile()); } - LocalizationFile[] files = PathManagerFactory - .getPathManager() - .listFiles( - getTreeSearchContexts(data - .getPathData().getType()), - data.getPath(), - new String[] { parts[parts.length - 1] }, - false, false); - toDelete.addAll(Arrays.asList(files)); + } else if (data.isDirectory()) { + toDelete.addAll(buildFileList(item, null)); } } } @@ -866,6 +858,7 @@ public class FileTreeView extends ViewPart implements IPartListener2, } if (toDelete.size() > 0) { + Collections.sort(toDelete, new FileTreeFileComparator()); mgr.add(new DeleteAction(getSite().getPage(), toDelete .toArray(new LocalizationFile[toDelete.size()]))); mgr.add(new Separator()); @@ -927,6 +920,39 @@ public class FileTreeView extends ViewPart implements IPartListener2, } } + /** + * Builds a list of {@link LocalizationFile}s starting at the item passed in + * + * @param item + * @param files + * (option) list to add entries to + * @return list of files + */ + private List