r3406 - in isis-fish/trunk/src/main/java/fr/ifremer/isisfish: datastore ui/script ui/script/model
Author: chatellier Date: 2011-06-15 12:32:12 +0000 (Wed, 15 Jun 2011) New Revision: 3406 Log: GEstion de tous les r?\195?\169pertoires du VCS communaut?\195?\169 Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/AnalysePlanStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ExportStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/FormuleStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/RuleStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ScriptStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityExportStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulatorStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptAction.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptTypesComboModel.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTree.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeCellRenderer.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeModel.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/package-info.java Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/AnalysePlanStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/AnalysePlanStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/AnalysePlanStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2005 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -85,6 +85,11 @@ super(rootSrc, directory, name); } + /** + * Get context (official VCS) analyse plan directory. + * + * @return context analyse plan directory + */ static public File getAnalysePlanDirectory() { File result = new File(getContextDatabaseDirectory(), ANALYSE_PLAN_PATH); result.mkdirs(); @@ -92,6 +97,17 @@ } /** + * Get community VCS analyse plan directory. + * + * @return community analyse plan directory + */ + public static File getCommunityAnalysePlanDirectory() { + File result = new File(getCommunityDatabaseDirectory(), ANALYSE_PLAN_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne le nom de toutes les plans existantes * * @return les noms de tous les plans existant en local Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ExportStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ExportStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ExportStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2005 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -82,11 +82,27 @@ super(rootSrc, directory, name); } + /** + * Get context (official VCS) export directory. + * + * @return context export directory + */ public static File getExportDirectory() { File result = new File(getContextDatabaseDirectory(), EXPORT_PATH); result.mkdirs(); return result; } + + /** + * Get community VCS export directory. + * + * @return community export directory + */ + public static File getCommunityExportDirectory() { + File result = new File(getCommunityDatabaseDirectory(), EXPORT_PATH); + result.mkdirs(); + return result; + } /** * Retourne une nouvelle instance de la regle. Compile le fichier si besoin Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/FormuleStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/FormuleStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/FormuleStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2006 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2006 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -71,6 +71,8 @@ protected String category = null; /** + * Create new formule storage. + * * @param rootSrc le repertoire root de stockage des formules * @param directory le repertoire des formules * @param category la category de la formule @@ -82,15 +84,29 @@ this.category = category; } + /** + * Get official VCS formule directory. + * + * @return context formule directory + */ public static File getFormuleDirectory() { - File result = IsisFish.config.getDatabaseDirectory(); - result = new File(result, FORMULE_PATH); + File result = new File(IsisFish.config.getDatabaseDirectory(), FORMULE_PATH); result.mkdirs(); return result; } - /** + * Get community VCS formule directory. + * + * @return community formule directory + */ + public static File getCommunityFormuleDirectory() { + File result = new File(getCommunityDatabaseDirectory(), FORMULE_PATH); + result.mkdirs(); + return result; + } + + /** * @return Returns the category. */ public String getCategory() { Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/RuleStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/RuleStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/RuleStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2005 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -88,13 +88,29 @@ super(rootSrc, directory, name); } + /** + * Get context (official VCS) rule directory. + * + * @return context rule directory + */ static public File getRuleDirectory() { File result = new File(getContextDatabaseDirectory(), RULE_PATH); result.mkdirs(); return result; } - + /** + * Get community VCS rule directory. + * + * @return community rule directory + */ + public static File getCommunityRuleDirectory() { + File result = new File(getCommunityDatabaseDirectory(), RULE_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne le nom de toutes les regles existantes pour cette region * * @return all rule names found in local user database Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ScriptStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ScriptStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/ScriptStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2005 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -79,14 +79,30 @@ protected ScriptStorage(File rootSrc, File directory, String name) { super(rootSrc, directory, name); } - + + /** + * Get context (official VCS) script directory. + * + * @return context script directory + */ static public File getScriptDirectory() { File result = new File(getContextDatabaseDirectory(), SCRIPT_PATH); result.mkdirs(); return result; } - + /** + * Get community VCS script directory. + * + * @return community script directory + */ + public static File getCommunityScriptDirectory() { + File result = new File(getCommunityDatabaseDirectory(), SCRIPT_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne une nouvelle instance de la regle. Compile le fichier si besoin * * @return une nouvelle instance Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityExportStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityExportStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityExportStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2009 - 2010 Ifremer, CodeLutin + * Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -75,6 +75,11 @@ super(rootSrc, directory, name); } + /** + * Get context (official VCS) sensitivity export directory. + * + * @return context sensitivity export directory + */ public static File getSensitivityExportDirectory() { File result = new File(getContextDatabaseDirectory(), SENSITIVITY_EXPORT_PATH); result.mkdirs(); @@ -82,6 +87,17 @@ } /** + * Get community VCS sensitivity export directory. + * + * @return community sensitivity export directory + */ + public static File getCommunitySensitivityExportDirectory() { + File result = new File(getCommunityDatabaseDirectory(), SENSITIVITY_EXPORT_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne une nouvelle instance de l'export. Compile le fichier si besoin. * * @return une nouvelle instance de la classe d'export Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SensitivityStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2009 - 2010 Ifremer, CodeLutin + * Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -67,13 +67,6 @@ /** Template freemarker pour les scripts de sensibilité. */ public static final String SENSIVITY_TEMPLATE = "templates/script/sensitivity.ftl"; - - /** - * Prefix des paramètres de la classe. - * - * ex : public int param_count; - */ - protected final static String PARAM_PREFIX = "param_"; /** Cache. */ protected static Map<String, SensitivityStorage> sensitivityCache = new ReferenceMap(); @@ -103,6 +96,17 @@ } /** + * Get community VCS sensitivity directory. + * + * @return community sensitivity directory + */ + public static File getCommunitySensitivityDirectory() { + File result = new File(getCommunityDatabaseDirectory(), SENSITIVITY_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne le nom de tous les calculateurs de sensibilité existant. * * @return le nom de tous les calculateurs de sensibilité existans en local Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulatorStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulatorStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulatorStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2005 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -65,15 +65,30 @@ protected SimulatorStorage(File rootSrc, File directory, String name) { super(rootSrc, directory, name); } - + + /** + * Get context (official VCS) simulator directory. + * + * @return context simulator directory + */ public static File getSimulatorDirectory() { File result = new File(getContextDatabaseDirectory(), SIMULATOR_PATH); result.mkdirs(); return result; } - /** + * Get community VCS simulator directory. + * + * @return community simulator directory + */ + public static File getCommunitySimulatorDirectory() { + File result = new File(getCommunityDatabaseDirectory(), SIMULATOR_PATH); + result.mkdirs(); + return result; + } + + /** * Retourne une nouvelle instance du simulateur. Compile le fichier si besoin. * * @return new simulator instance Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2006 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin + * Copyright (C) 2006 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -60,8 +60,10 @@ /** Listener set. Manage single reference and weak reference. */ protected static ListenerSet<StorageChangeListener> changeListeners = new ListenerSet<StorageChangeListener>(); + /** VCS root directory. */ protected File root = null; + /** Versionned file to manage in VCS. */ protected File file = null; /** Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptAction.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptAction.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptAction.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -161,7 +161,7 @@ */ protected void setButton() { - File selectedFile = (File)scriptUI.getScriptTree().getLastSelectedPathComponent(); + File selectedFile = scriptUI.getScriptTree().getSelectedFile(); if (selectedFile != null) { scriptUI.setSingleFileSelected(selectedFile.isFile()); @@ -204,7 +204,7 @@ // specific case for equation model if (scriptType.equals(ScriptMapping.EquationModel)) { - java.util.List<String> values = FormuleStorage.getCategories(); + List<String> values = FormuleStorage.getCategories(); equationModelType = (String) JOptionPane.showInputDialog(scriptUI, _("isisfish.message.new.formule.category"), _("isisfish.message.new.formule.title"), @@ -1086,11 +1086,11 @@ SimulatorStorage.SIMULATOR_TEMPLATE), EquationModel( FormuleStorage.getFormuleDirectory(), - FormuleStorage.FORMULE_TEMPLATE)/*, + FormuleStorage.FORMULE_TEMPLATE), CommunitySimulator( SimulatorStorage.getCommunitySimulatorDirectory(), - SimulatorStorage.SIMULATOR_TEMPLATE)*/; + SimulatorStorage.SIMULATOR_TEMPLATE); protected File module; protected String templatePath; Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptTypesComboModel.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptTypesComboModel.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/ScriptTypesComboModel.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2009 - 2010 Ifremer, CodeLutin + * Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as @@ -53,8 +53,6 @@ * Empty constructor. */ public ScriptTypesComboModel() { - super(); - ScriptMapping[] values = ScriptMapping.values(); mappings = new ArrayList<ScriptMapping>(values.length); for (ScriptMapping mapping : values) { Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTree.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTree.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTree.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -84,8 +84,23 @@ return selectedFiles; } - + /** + * Get selected file. + * + * @return selected file + */ + public File getSelectedFile() { + File result = null; + Object selectedObject = getLastSelectedPathComponent(); + if (selectedObject != null && selectedObject instanceof File) { + result = (File)selectedObject; + } + + return result; + } + + /** * Return selected directory. * * @return selected directory Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeCellRenderer.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeCellRenderer.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeCellRenderer.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -29,18 +29,21 @@ import java.awt.Color; import java.awt.Component; +import java.awt.Font; import java.io.File; +import javax.swing.Icon; import javax.swing.JLabel; import javax.swing.JTree; import javax.swing.tree.DefaultTreeCellRenderer; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.util.Resource; import fr.ifremer.isisfish.IsisFish; +import fr.ifremer.isisfish.vcs.VCS.Status; import fr.ifremer.isisfish.vcs.VCSException; -import fr.ifremer.isisfish.vcs.VCS.Status; /** * Renderer for script tree. @@ -61,6 +64,8 @@ /** Class logger. */ private static Log log = LogFactory.getLog(ScriptTreeCellRenderer.class); + protected static final Icon VCS_ICON = Resource.getIcon("/icons/database_key.png"); + /* * @see javax.swing.tree.TreeCellRenderer#getTreeCellRendererComponent(javax.swing.JTree, java.lang.Object, boolean, boolean, boolean, int, boolean) */ @@ -73,8 +78,12 @@ if (value == IsisFish.vcs) { c.setText(_("isisfish.ui.script.officialvcs")); + c.setIcon(VCS_ICON); + c.setFont(c.getFont().deriveFont(Font.BOLD)); } else if (value == IsisFish.communityVcs) { c.setText(_("isisfish.ui.script.communityvcs")); + c.setIcon(VCS_ICON); + c.setFont(c.getFont().deriveFont(Font.BOLD)); } else if (value instanceof File) { File file = (File)value; @@ -103,11 +112,15 @@ } } - String prefix = ""; - if (file.isDirectory() && file.getParentFile().equals(IsisFish.communityVcs.getLocalRepository())) { - prefix = "Community "; + c.setText(file.getName()); + if (leaf) { + c.setIcon(leafIcon); + } else if (expanded) { + c.setIcon(openIcon); + } else { + c.setIcon(closedIcon); } - c.setText(prefix + file.getName()); + c.setFont(c.getFont().deriveFont(Font.PLAIN)); } return c; Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeModel.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeModel.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/ScriptTreeModel.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -103,7 +103,14 @@ offFiles.add(SimulatorStorage.getSimulatorDirectory()); List<File> comFiles = new ArrayList<File>(); - //comFiles.add(SimulatorStorage.getCommunitySimulatorDirectory()); + comFiles.add(AnalysePlanStorage.getCommunityAnalysePlanDirectory()); + comFiles.add(ExportStorage.getCommunityExportDirectory()); + comFiles.add(FormuleStorage.getCommunityFormuleDirectory()); + comFiles.add(RuleStorage.getCommunityRuleDirectory()); + comFiles.add(ScriptStorage.getCommunityScriptDirectory()); + comFiles.add(SensitivityExportStorage.getCommunitySensitivityExportDirectory()); + comFiles.add(SensitivityStorage.getCommunitySensitivityDirectory()); + comFiles.add(SimulatorStorage.getCommunitySimulatorDirectory()); rootFiles.put(IsisFish.vcs, offFiles); rootFiles.put(IsisFish.communityVcs, comFiles); Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/package-info.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/package-info.java 2011-06-15 10:24:46 UTC (rev 3405) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/script/model/package-info.java 2011-06-15 12:32:12 UTC (rev 3406) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2005 - 2010 Ifremer, CodeLutin + * Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as
participants (1)
-
chatellier@users.labs.libre-entreprise.org