Author: dlanglais Date: 2010-03-11 17:58:41 +0100 (Thu, 11 Mar 2010) New Revision: 216 Log: Modification des plugins : - ajout de m?\195?\169thodes load() et unload(), - nos plugins les utilisent pour ajouter/supprimer des entr?\195?\169es dans les menus, n?\195?\169anmoins cela peut permettre de faire tout et n'importe quoi(impossible ?\195?\160 contr?\195?\180ler de notre cot?\195?\169). Modified: trunk/msm-bighashmap/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmap/BigHashMap.java trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMapV2.java trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXML.java trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXML.java trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLXPP3.java trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3.java trunk/msm-fromtoXPP3/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3Main.java trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java trunk/msm-monitoring-plugins/src/main/java/org/nuiton/monitoring/ShowDiskSpace.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/PluginLoader.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Plugin.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ApplicationEngine.java trunk/msm/src/test/java/org/nuiton/mapstoragemanager/core/PluginLoaderTest.java Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/PluginLoader.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/PluginLoader.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/PluginLoader.java 2010-03-11 16:58:41 UTC (rev 216) @@ -91,15 +91,19 @@ * Add plugin in the plugin's map. */ for (BigTable bigTable : bigTableSetLoader) { + bigTable.load(); plugins.put(bigTable.getPluginName(), bigTable); } for (Importer importer : importerSetLoader) { + importer.load(); plugins.put(importer.getPluginName(), importer); } for (Exporter exporter : exporterSetLoader) { + exporter.load(); plugins.put(exporter.getPluginName(), exporter); } for (Monitoring monitor : monitoringSetLoader) { + monitor.load(); plugins.put(monitor.getPluginName(), monitor); } } Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java 2010-03-11 16:58:41 UTC (rev 216) @@ -1,5 +1,8 @@ package org.nuiton.mapstoragemanager.plugins; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; @@ -7,8 +10,11 @@ import java.util.Map; import java.util.Properties; import java.util.Set; +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; - /** * Class OurHashMap2. * @author E045231P @@ -19,14 +25,12 @@ * map table. */ private Map<String, ArrayList<String>> mapTable = - new HashMap<String, ArrayList<String>>(); - + new HashMap<String, ArrayList<String>>(); /** * map column. */ - private Map<String, ArrayList<String>> mapColumn = - new HashMap<String, ArrayList<String>>(); - + private Map<String, ArrayList<String>> mapColumn = + new HashMap<String, ArrayList<String>>(); /** * map data. */ @@ -49,7 +53,7 @@ @Override public final void deleteTable(final String table) { - mapTable.remove(table); + mapTable.remove(table); } @Override @@ -58,7 +62,7 @@ } @Override - public final void createColumn(final String table, final String column) { + public final void createColumn(final String table, final String column) { // if the table exist and only if the column doesn't exist. if (mapTable.containsKey(table) && !mapColumn.containsKey(column)) { mapColumn.put(column, new ArrayList<String>()); @@ -67,10 +71,10 @@ } @Override - public final void deleteColumn(final String table, final String column) { + public final void deleteColumn(final String table, final String column) { // if the table exist and only if the column exist. if (mapTable.containsKey(table) - && mapTable.get(table).contains(column)) { + && mapTable.get(table).contains(column)) { mapTable.get(table).remove(column); } } @@ -83,7 +87,7 @@ @Override public final void put(final String table, final String column, - final String key, final String content) { + final String key, final String content) { // If the table and the column exist. if (mapTable.containsKey(table) && mapColumn.containsKey(column)) { mapColumn.get(column).add(key); @@ -93,7 +97,7 @@ @Override public final String get(final String table, final String column, - final String key) { + final String key) { String ret = ""; if (mapTable.containsKey(table)) { if (mapColumn.containsKey(column)) { @@ -102,20 +106,20 @@ ret = "Column doesn't exist"; } } else { - ret = "Table doesn't exist"; + ret = "Table doesn't exist"; } return ret; } @Override public final String get(final String table, final String column, - final String key, final int version) { + final String key, final int version) { return get(table, column, key); } @Override public final Map<String, String> getRow(final String table, - final String key) { + final String key) { throw new UnsupportedOperationException("Not supported yet."); } @@ -151,5 +155,60 @@ public final String getPluginName() { return this.getClass().getSimpleName(); } - + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().connection(pluginName); + } + }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + menuConnect.add(menuItem); + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + for (Component menuItem : menuConnect.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuConnect.remove(menuItem); + } + } + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } } Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Plugin.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Plugin.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Plugin.java 2010-03-11 16:58:41 UTC (rev 216) @@ -11,4 +11,20 @@ * @return the plugin name */ String getPluginName(); + + /** + * Returns the plugin description. + * @return the plugin description. + */ + String getDescription(); + + /** + * Load the plugin. + */ + void load(); + + /** + * Unload the plugin. + */ + void unload(); } Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ApplicationEngine.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ApplicationEngine.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ApplicationEngine.java 2010-03-11 16:58:41 UTC (rev 216) @@ -124,65 +124,65 @@ LOG.info("getAllPluginNames : " + pluginLoader.getAllPluginNames()); - MainUI ui = MainUI.getInstance(); - for (Plugin btPlugin : pluginLoader.getAllPlugin(BigTable.class)) { - final String btName = btPlugin.getPluginName(); - jaxx.runtime.swing.Item bigTableItem = - new jaxx.runtime.swing.Item(btName, null, btName, true); - ui.getNameBase().addItem(bigTableItem); - ui.getNameBase().setSelectedItem(bigTableItem); - - JMenuItem menuItem = new JMenuItem(btName); - menuItem.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - connection(btName); - } - }); - ui.getMenuConnectBis().add(menuItem); - ui.getMenuConnectBis().setEnabled(true); - } - for (Plugin imPlugin : pluginLoader.getAllPlugin(Importer.class)) { - final String imName = imPlugin.getPluginName(); -// jaxx.runtime.swing.Item importerItem = -// new jaxx.runtime.swing.Item(imName, null, imName, true); -// ui.getImporter().addItem(importerItem); -// ui.getImporter().setSelectedItem(importerItem); - - JMenuItem menuItem = new JMenuItem(imName); - menuItem.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - importBase(imName); - } - }); - ui.getMenuImportBis().add(menuItem); - ui.getMenuImportBis().setEnabled(true); - } - for (Plugin exPlugin : pluginLoader.getAllPlugin(Exporter.class)) { - final String exName = exPlugin.getPluginName(); -// jaxx.runtime.swing.Item exporterItem = -// new jaxx.runtime.swing.Item(exName, null, exName, true); -// ui.getExporter().addItem(exporterItem); -// ui.getExporter().setSelectedItem(exporterItem); - - JMenuItem menuItem = new JMenuItem(exName); - menuItem.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - exportBase(exName); - } - }); - ui.getMenuExportBis().add(menuItem); - ui.getMenuExportBis().setEnabled(true); - } - for (Plugin exPlugin : pluginLoader.getAllPlugin(Monitoring.class)) { - Monitoring monitor = (Monitoring) exPlugin; - monitor.display(); - } +// MainUI ui = MainUI.getInstance(); +// for (Plugin btPlugin : pluginLoader.getAllPlugin(BigTable.class)) { +// final String btName = btPlugin.getPluginName(); +// jaxx.runtime.swing.Item bigTableItem = +// new jaxx.runtime.swing.Item(btName, null, btName, true); +// ui.getNameBase().addItem(bigTableItem); +// ui.getNameBase().setSelectedItem(bigTableItem); +// +// JMenuItem menuItem = new JMenuItem(btName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// connection(btName); +// } +// }); +// ui.getMenuConnectBis().add(menuItem); +// ui.getMenuConnectBis().setEnabled(true); +// } +// for (Plugin imPlugin : pluginLoader.getAllPlugin(Importer.class)) { +// final String imName = imPlugin.getPluginName(); +//// jaxx.runtime.swing.Item importerItem = +//// new jaxx.runtime.swing.Item(imName, null, imName, true); +//// ui.getImporter().addItem(importerItem); +//// ui.getImporter().setSelectedItem(importerItem); +// +// JMenuItem menuItem = new JMenuItem(imName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// importBase(imName); +// } +// }); +// ui.getMenuImportBis().add(menuItem); +// ui.getMenuImportBis().setEnabled(true); +// } +// for (Plugin exPlugin : pluginLoader.getAllPlugin(Exporter.class)) { +// final String exName = exPlugin.getPluginName(); +//// jaxx.runtime.swing.Item exporterItem = +//// new jaxx.runtime.swing.Item(exName, null, exName, true); +//// ui.getExporter().addItem(exporterItem); +//// ui.getExporter().setSelectedItem(exporterItem); +// +// JMenuItem menuItem = new JMenuItem(exName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// exportBase(exName); +// } +// }); +// ui.getMenuExportBis().add(menuItem); +// ui.getMenuExportBis().setEnabled(true); +// } +// for (Plugin exPlugin : pluginLoader.getAllPlugin(Monitoring.class)) { +// Monitoring monitor = (Monitoring) exPlugin; +// monitor.display(); +// } } } @@ -350,28 +350,28 @@ bigTable = (BigTable) pluginLoader.getPlugin(nameBase); - { - bigTable.createTable("table1"); - bigTable.createTable("table2"); - bigTable.createColumn("table1", "column1"); - bigTable.createColumn("table1", "column2"); - bigTable.createColumn("table2", "column3"); - bigTable.createColumn("table2", "column4"); - bigTable.createColumn("table2", "column5"); +// { +// bigTable.createTable("table1"); +// bigTable.createTable("table2"); +// bigTable.createColumn("table1", "column1"); +// bigTable.createColumn("table1", "column2"); +// bigTable.createColumn("table2", "column3"); +// bigTable.createColumn("table2", "column4"); +// bigTable.createColumn("table2", "column5"); +// +// bigTable.put("table1", "column1", "1", "content1"); +// bigTable.put("table1", "column1", "2", "content2"); +// bigTable.put("table1", "column2", "3", "content3"); +// bigTable.put("table1", "column2", "4", "content4"); +// +// bigTable.put("table2", "column3", "5", "content5"); +// bigTable.put("table2", "column3", "6", "content6"); +// bigTable.put("table2", "column4", "7", "content7"); +// bigTable.put("table2", "column4", "8", "content8"); +// bigTable.put("table2", "column5", "9", "content9"); +// bigTable.put("table2", "column5", "10", "content10"); +// } - bigTable.put("table1", "column1", "1", "content1"); - bigTable.put("table1", "column1", "2", "content2"); - bigTable.put("table1", "column2", "3", "content3"); - bigTable.put("table1", "column2", "4", "content4"); - - bigTable.put("table2", "column3", "5", "content5"); - bigTable.put("table2", "column3", "6", "content6"); - bigTable.put("table2", "column4", "7", "content7"); - bigTable.put("table2", "column4", "8", "content8"); - bigTable.put("table2", "column5", "9", "content9"); - bigTable.put("table2", "column5", "10", "content10"); - } - //connection verification boolean goodUse = true; goodUse = bigTable.connect(new Properties()); Modified: trunk/msm/src/test/java/org/nuiton/mapstoragemanager/core/PluginLoaderTest.java =================================================================== --- trunk/msm/src/test/java/org/nuiton/mapstoragemanager/core/PluginLoaderTest.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm/src/test/java/org/nuiton/mapstoragemanager/core/PluginLoaderTest.java 2010-03-11 16:58:41 UTC (rev 216) @@ -118,6 +118,21 @@ return "test"; } + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void load() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void unload() { + throw new UnsupportedOperationException("Not supported yet."); + } + }; pluginsExpected.clear(); @@ -162,6 +177,21 @@ public String getPluginName() { return "testImporter"; } + + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void load() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void unload() { + throw new UnsupportedOperationException("Not supported yet."); + } }; Plugin testExporter = new Exporter() { @@ -177,6 +207,21 @@ public String getPluginName() { return "testExporter"; } + + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void load() { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public void unload() { + throw new UnsupportedOperationException("Not supported yet."); + } }; pluginsMapActual.put(testImporter.getPluginName(), testImporter); Modified: trunk/msm-bighashmap/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmap/BigHashMap.java =================================================================== --- trunk/msm-bighashmap/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmap/BigHashMap.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-bighashmap/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmap/BigHashMap.java 2010-03-11 16:58:41 UTC (rev 216) @@ -1,11 +1,18 @@ package org.nuiton.mapstoragemanager.plugins.bighashmap; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.HashMap; import java.util.Map; import java.util.NoSuchElementException; import java.util.Properties; import java.util.Set; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import org.nuiton.mapstoragemanager.plugins.BigTable; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; /** * Implementation of bigTable with hashMap. @@ -171,4 +178,59 @@ return this.getClass().getSimpleName(); } + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().connection(pluginName); + } + }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + menuConnect.add(menuItem); + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + for (Component menuItem : menuConnect.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuConnect.remove(menuItem); + } + } + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } } Modified: trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMapV2.java =================================================================== --- trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMapV2.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMapV2.java 2010-03-11 16:58:41 UTC (rev 216) @@ -1,11 +1,18 @@ package org.nuiton.mapstoragemanager.plugins.bighashmapv2; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.HashMap; import java.util.Map; import java.util.NoSuchElementException; import java.util.Properties; import java.util.Set; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import org.nuiton.mapstoragemanager.plugins.BigTable; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; /** * Implementation of bigTable with hashMap. @@ -170,4 +177,60 @@ public final String getPluginName() { return this.getClass().getSimpleName(); } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().connection(pluginName); + } + }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + menuConnect.add(menuItem); + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + for (Component menuItem : menuConnect.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuConnect.remove(menuItem); + } + } + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } } Modified: trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXML.java =================================================================== --- trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXML.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXML.java 2010-03-11 16:58:41 UTC (rev 216) @@ -4,10 +4,15 @@ */ package org.nuiton.mapstoragemanager.plugins.exporter; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.util.Set; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import javax.swing.filechooser.FileFilter; import javax.swing.filechooser.FileNameExtensionFilter; import org.apache.commons.logging.Log; @@ -19,6 +24,8 @@ import org.jdom.output.XMLOutputter; import org.nuiton.mapstoragemanager.plugins.Exporter; import org.nuiton.mapstoragemanager.plugins.BigTable; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; /** * A Class to export in xml files the content of Hbase database. @@ -209,4 +216,60 @@ // } return fileFilter; } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().exportBase(pluginName); + } + }); + JMenu menuExport = MainUI.getInstance().getMenuExportBis(); + menuExport.add(menuItem); + + if (!menuExport.isEnabled()) { + menuExport.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuExport = MainUI.getInstance().getMenuExportBis(); + for (Component menuItem : menuExport.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuExport.remove(menuItem); + } + } + + if (!menuExport.isEnabled()) { + menuExport.setEnabled(true); + } + } } Modified: trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXML.java =================================================================== --- trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXML.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXML.java 2010-03-11 16:58:41 UTC (rev 216) @@ -4,9 +4,14 @@ */ package org.nuiton.mapstoragemanager.plugins.importer; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.io.File; import java.io.IOException; import java.util.List; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import javax.swing.filechooser.FileFilter; import javax.swing.filechooser.FileNameExtensionFilter; import org.apache.commons.logging.Log; @@ -19,6 +24,8 @@ import org.jdom.output.XMLOutputter; import org.nuiton.mapstoragemanager.plugins.Importer; import org.nuiton.mapstoragemanager.plugins.BigTable; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; /** * @@ -183,4 +190,60 @@ // } return fileFilter; } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().importBase(pluginName); + } + }); + JMenu menuImport = MainUI.getInstance().getMenuImportBis(); + menuImport.add(menuItem); + + if (!menuImport.isEnabled()) { + menuImport.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuImport = MainUI.getInstance().getMenuImportBis(); + for (Component menuItem : menuImport.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuImport.remove(menuItem); + } + } + + if (!menuImport.isEnabled()) { + menuImport.setEnabled(true); + } + } } Modified: trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLXPP3.java =================================================================== --- trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLXPP3.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLXPP3.java 2010-03-11 16:58:41 UTC (rev 216) @@ -4,15 +4,22 @@ */ package org.nuiton.mapstoragemanager.plugins.exporter; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.io.File; import java.io.FileWriter; import java.io.IOException; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import javax.swing.filechooser.FileFilter; import javax.swing.filechooser.FileNameExtensionFilter; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.mapstoragemanager.plugins.Exporter; import org.nuiton.mapstoragemanager.plugins.BigTable; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserFactory; @@ -179,4 +186,60 @@ public final FileFilter getFileFilter() { return fileFilter; } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().exportBase(pluginName); + } + }); + JMenu menuExport = MainUI.getInstance().getMenuExportBis(); + menuExport.add(menuItem); + + if (!menuExport.isEnabled()) { + menuExport.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuExport = MainUI.getInstance().getMenuExportBis(); + for (Component menuItem : menuExport.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuExport.remove(menuItem); + } + } + + if (!menuExport.isEnabled()) { + menuExport.setEnabled(true); + } + } } Modified: trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3.java =================================================================== --- trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-fromtoXPP3/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3.java 2010-03-11 16:58:41 UTC (rev 216) @@ -1,17 +1,24 @@ package org.nuiton.mapstoragemanager.plugins.importer; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.HashMap; import java.util.Map; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import javax.swing.filechooser.FileFilter; import javax.swing.filechooser.FileNameExtensionFilter; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.mapstoragemanager.plugins.BigTable; import org.nuiton.mapstoragemanager.plugins.Importer; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserFactory; @@ -239,4 +246,60 @@ public String getPluginName() { return this.getClass().getSimpleName(); } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().importBase(pluginName); + } + }); + JMenu menuImport = MainUI.getInstance().getMenuImportBis(); + menuImport.add(menuItem); + + if (!menuImport.isEnabled()) { + menuImport.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuImport = MainUI.getInstance().getMenuImportBis(); + for (Component menuItem : menuImport.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuImport.remove(menuItem); + } + } + + if (!menuImport.isEnabled()) { + menuImport.setEnabled(true); + } + } } Modified: trunk/msm-fromtoXPP3/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3Main.java =================================================================== --- trunk/msm-fromtoXPP3/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3Main.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-fromtoXPP3/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLXPP3Main.java 2010-03-11 16:58:41 UTC (rev 216) @@ -28,6 +28,7 @@ FromXMLXPP3 myXmlPullApp = new FromXMLXPP3(); File importTest = +// getFile.getTestFile("/src/test/resources/generator.xml"); getFile.getTestFile("/src/test/resources/importTest.xml"); myXmlPullApp.importFrom(bigTable, importTest); Modified: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java =================================================================== --- trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java 2010-03-11 16:58:41 UTC (rev 216) @@ -1,11 +1,16 @@ package org.nuiton.mapstoragemanager.plugins.hbase; +import java.awt.Component; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.io.IOException; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Properties; import java.util.Set; +import javax.swing.JMenu; +import javax.swing.JMenuItem; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.hbase.MasterNotRunningException; @@ -20,6 +25,8 @@ import org.apache.hadoop.hbase.client.HTable; import org.apache.hadoop.hbase.client.Put; import org.apache.hadoop.hbase.client.Result; +import org.nuiton.mapstoragemanager.ui.MainUI; +import org.nuiton.mapstoragemanager.ui.gui.ApplicationEngine; /** * A plugin for MSM using HBase API. @@ -347,4 +354,59 @@ return this.getClass().getSimpleName(); } + /** + * {@inheritDoc} + */ +// @Override + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ +// @Override + public void load() { + final String pluginName = getPluginName(); + JMenuItem menuItem = new JMenuItem(pluginName); + menuItem.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + ApplicationEngine.getInstance().connection(pluginName); + } + }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + menuConnect.add(menuItem); + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } + + /** + * {@inheritDoc} + */ +// @Override + public void unload() { + final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); + JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); + for (Component menuItem : menuConnect.getComponents()) { + if (menuItem.getName().equals(pluginName)) { + menuConnect.remove(menuItem); + } + } + + if (!menuConnect.isEnabled()) { + menuConnect.setEnabled(true); + } + } } Modified: trunk/msm-monitoring-plugins/src/main/java/org/nuiton/monitoring/ShowDiskSpace.java =================================================================== --- trunk/msm-monitoring-plugins/src/main/java/org/nuiton/monitoring/ShowDiskSpace.java 2010-03-11 15:57:24 UTC (rev 215) +++ trunk/msm-monitoring-plugins/src/main/java/org/nuiton/monitoring/ShowDiskSpace.java 2010-03-11 16:58:41 UTC (rev 216) @@ -26,7 +26,7 @@ * Height of the frame. */ private static final int FRAME_HEIGHT = 300; - + /** * Constructor. */ @@ -80,7 +80,7 @@ } Runtime runtime = Runtime.getRuntime(); - + final long freeMemoryByte = runtime.freeMemory(); final long totalMemoryByte = runtime.totalMemory(); final long maxMemoryByte = runtime.maxMemory(); @@ -92,23 +92,82 @@ final double freeMemoryGb = freeMemoryMb / DIV; final double totalMemoryGb = totalMemoryMb / DIV; final double maxMemoryGb = maxMemoryMb / DIV; - + content.add(new JLabel( - "freeMemory : " + freeMemoryMb + " Mb (" + - new DecimalFormat("0.00").format(freeMemoryGb) + " Gb)")); + "freeMemory : " + freeMemoryMb + " Mb (" + + new DecimalFormat("0.00").format(freeMemoryGb) + " Gb)")); content.add(new JLabel( - "totalMemory : " + totalMemoryMb + " Mb (" + - new DecimalFormat("0.00").format(totalMemoryGb) + " Gb)")); + "totalMemory : " + totalMemoryMb + " Mb (" + + new DecimalFormat("0.00").format(totalMemoryGb) + " Gb)")); content.add(new JLabel( - "maxMemory : " + maxMemoryMb + " Mb (" + - new DecimalFormat("0.00").format(maxMemoryGb) + " Gb)")); + "maxMemory : " + maxMemoryMb + " Mb (" + + new DecimalFormat("0.00").format(maxMemoryGb) + " Gb)")); this.setContentPane(content); this.pack(); this.setVisible(true); } + /** + * {@inheritDoc} + */ public String getPluginName() { return this.getClass().getSimpleName(); } + + /** + * {@inheritDoc} + */ + public String getDescription() { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + @Override + public void load() { +// final String pluginName = getPluginName(); +// JMenuItem menuItem = new JMenuItem(pluginName); +// menuItem.addActionListener(new ActionListener() { +// +// @Override +// public void actionPerformed(ActionEvent e) { +// ApplicationEngine.getInstance().connection(pluginName); +// } +// }); +// JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); +// menuConnect.add(menuItem); +// +// if (!menuConnect.isEnabled()) { +// menuConnect.setEnabled(true); +// } + this.display(); + } + + /** + * {@inheritDoc} + */ + @Override + public void unload() { +// final String pluginName = getPluginName(); +//// JMenuItem menuItem = new JMenuItem(pluginName); +//// menuItem.addActionListener(new ActionListener() { +//// +//// @Override +//// public void actionPerformed(ActionEvent e) { +//// ApplicationEngine.getInstance().connection(pluginName); +//// } +//// }); +// JMenu menuConnect = MainUI.getInstance().getMenuConnectBis(); +// for (Component menuItem : menuConnect.getComponents()) { +// if (menuItem.getName().equals(pluginName)) { +// menuConnect.remove(menuItem); +// } +// } +// +// if (!menuConnect.isEnabled()) { +// menuConnect.setEnabled(true); +// } + } }