Author: dlanglais Date: 2010-03-02 12:13:24 +0100 (Tue, 02 Mar 2010) New Revision: 156 Added: trunk/DEADJOE trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/OLDHBase.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java Removed: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBaseNewBigTable.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/NewBigTable.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap.java 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/BigHashMap.java trunk/msm-fromtoXML/ 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-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLTest.java trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLTest.java trunk/msm-hbase/pom.xml trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/BigTableLoader.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Exporter.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Importer.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ColumnModel.java trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/TableModel.java trunk/msm/src/main/resources/i18n/msm-en_GB.properties trunk/msm/src/main/resources/i18n/msm-fr_FR.properties Log: refactorisation NewBigTable -> BigTable, suppression interface BigTable Added: trunk/DEADJOE =================================================================== --- trunk/DEADJOE (rev 0) +++ trunk/DEADJOE 2010-03-02 11:13:24 UTC (rev 156) @@ -0,0 +1,32 @@ + +*** Ces fichiers modifi�s �taient ouvert dans JOE quand il a quitt� le Tue Mar 2 12:03:47 2010 +*** JOE a quitt� suite � la fermeture du terminal + +*** Fichier '(Sans nom)' +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.2.tmp +svn-commit.tmp + +*** Ces fichiers modifi�s �taient ouvert dans JOE quand il a quitt� le Tue Mar 2 12:11:05 2010 +*** JOE a quitt� suite � la fermeture du terminal + +*** Fichier '(Sans nom)' +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.tmp +svn-commit.2.tmp +svn-commit.tmp Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/BigTableLoader.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/BigTableLoader.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/core/BigTableLoader.java 2010-03-02 11:13:24 UTC (rev 156) @@ -85,12 +85,12 @@ } else { for (BigTable bt : bigTableSetLoader) { s += bt.getClass().getName(); - bt.put("key", "value"); - if (bt.get("key").equals("value")) { - s += " (working)" + "\n"; - } else { - s += " (not working)" + "\n"; - } +// bt.put("key", "value"); +// if (bt.get("key").equals("value")) { +// s += " (working)" + "\n"; +// } else { +// s += " (not working)" + "\n"; +// } } } return s; Deleted: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java 2010-03-02 11:13:24 UTC (rev 156) @@ -1,47 +0,0 @@ -package org.nuiton.mapstoragemanager.plugins; - -import java.util.Set; - -/** - * The interface for all the BigTable implementations. - * @author Crieloue Gilles - * - */ -public interface BigTable { - - /** - * Connects to the database. - * @param host the server - * @param base the base name - * @param username the user login - * @param password the user password - */ - void connect(String host, String base, String username, String password); - - /** - * Selects the table. - * @param table the table name - */ - void selectTable(String table); - - /** - * Get the value matching a key. - * @param key the key - * @return the value - */ - String get(String key); - - /** - * put a value matching the key. - * @param key the key - * @param value the value - */ - void put(String key, String value); - - /** - * Returns the keys set. - * @return the keys set - */ - Set < String > getKeys(); - -} Copied: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java (from rev 152, trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/NewBigTable.java) =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java (rev 0) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java 2010-03-02 11:13:24 UTC (rev 156) @@ -0,0 +1,127 @@ +package org.nuiton.mapstoragemanager.plugins; + +import java.util.Map; +import java.util.Properties; +import java.util.Set; + +/** + * The interface for all the BigTable implementations. + * @author Dorian Langlais + */ +public interface BigTable { + + /** + * Connects to the database. + * @param properties the properties to initialize the connection. + * @return return true if connexion is established, else return false. + */ + boolean connect(Properties properties); + + /****************** + * Tables * + ******************/ + /** + * Selects the table. + * @param table the table to select + */ + void selectTable(String table); + + /** + * Create a new table in the base. + * @param table the name of the new table + */ + void createTable(String table); + + /** + * Delete a table in the base. + * @param table the table of the table to delete + */ + void deleteTable(String table); + + /** + * Get the tables' name which are in the base. + * @return Return a set containing the tables' name + */ + Set<String> getTablesNames(); + + /******************* + * Columns * + *******************/ + /** + * Create a new column in a table. + * Add a column <b>column</b> in the table <b>table</b> + * @param table the table name + * @param column the column name + */ + void createColumn(String table, String column); + + /** + * Delete a column in a table. + * Delete the column <b>column</b> in the table <b>table</b> + * @param table the table name + * @param column the column name + */ + void deleteColumn(String table, String column); + + /** + * Get the columns' name of one table. + * @param table the table name + * @return Return a set containing the columns' name of the table + * <b>table</b> + */ + Set<String> getColumnsNames(String table); + + /*************** + * Cell * + ***************/ + /** + * Put a new content in the table. + * Put a new <b>content</b> in the column <b>column</b> of the table + * <b>table</b> with the key <b>key</b>. + * @param table the table name + * @param column the column name + * @param key the key + * @param content the content to add + */ + void put(String table, String column, String key, String content); + + /** + * Get a content in the table. + * Get a content in the table <b>table</b> from the column <b>column</b> + * where the key is <b>key</b>. + * -> get the last value (with the greater timestamp). + * @param table the table name. + * @param column the column name. + * @param key the key + * @return the content + */ + String get(String table, String column, String key); + + /** + * Get a content in the table. + * Get a content in the table <b>table</b> from the column <b>column</b> + * where the key is <b>key</b>. + * -> get the content with the version <b>version</b>. + * @param table the table name. + * @param column the column name. + * @param key the key + * @param version + * @return the content + */ + String get(String table, String column, String key, int version); + + /** + * Get the row identified by the key <b>key<b> from the table <b>table</b> + * @param table the table name + * @param key the key + * @return a Map with key is column's name and value is content's value. + */ + Map<String, String> getRow(String table, String key); + + /** + * Get the keys from a table. + * @param table the table + * @return return a Set containing the keys a the table <b>table</b>. + */ + Set<String> getKeys(String table); +} Property changes on: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/BigTable.java ___________________________________________________________________ Added: svn:mergeinfo + Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Exporter.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Exporter.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Exporter.java 2010-03-02 11:13:24 UTC (rev 156) @@ -13,5 +13,5 @@ * @param bigTable the bigTable plugin. * @param file the file in which export the content of the base. */ - void exportTo (final NewBigTable bigTable, final File file); + void exportTo (final BigTable bigTable, final File file); } \ No newline at end of file Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Importer.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Importer.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/Importer.java 2010-03-02 11:13:24 UTC (rev 156) @@ -13,5 +13,5 @@ * @param bigTable the bigTable plugin. * @param file the file in which export the content of the base. */ - void importFrom (final NewBigTable bigTable, final File file); + void importFrom (final BigTable bigTable, final File file); } \ No newline at end of file Deleted: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/NewBigTable.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/NewBigTable.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/NewBigTable.java 2010-03-02 11:13:24 UTC (rev 156) @@ -1,127 +0,0 @@ -package org.nuiton.mapstoragemanager.plugins; - -import java.util.Map; -import java.util.Properties; -import java.util.Set; - -/** - * The interface for all the BigTable implementations. - * @author Dorian Langlais - */ -public interface NewBigTable { - - /** - * Connects to the database. - * @param properties the properties to initialize the connection. - * @return return true if connexion is established, else return false. - */ - boolean connect(Properties properties); - - /****************** - * Tables * - ******************/ - /** - * Selects the table. - * @param table the table to select - */ - void selectTable(String table); - - /** - * Create a new table in the base. - * @param table the name of the new table - */ - void createTable(String table); - - /** - * Delete a table in the base. - * @param table the table of the table to delete - */ - void deleteTable(String table); - - /** - * Get the tables' name which are in the base. - * @return Return a set containing the tables' name - */ - Set<String> getTablesNames(); - - /******************* - * Columns * - *******************/ - /** - * Create a new column in a table. - * Add a column <b>column</b> in the table <b>table</b> - * @param table the table name - * @param column the column name - */ - void createColumn(String table, String column); - - /** - * Delete a column in a table. - * Delete the column <b>column</b> in the table <b>table</b> - * @param table the table name - * @param column the column name - */ - void deleteColumn(String table, String column); - - /** - * Get the columns' name of one table. - * @param table the table name - * @return Return a set containing the columns' name of the table - * <b>table</b> - */ - Set<String> getColumnsNames(String table); - - /*************** - * Cell * - ***************/ - /** - * Put a new content in the table. - * Put a new <b>content</b> in the column <b>column</b> of the table - * <b>table</b> with the key <b>key</b>. - * @param table the table name - * @param column the column name - * @param key the key - * @param content the content to add - */ - void put(String table, String column, String key, String content); - - /** - * Get a content in the table. - * Get a content in the table <b>table</b> from the column <b>column</b> - * where the key is <b>key</b>. - * -> get the last value (with the greater timestamp). - * @param table the table name. - * @param column the column name. - * @param key the key - * @return the content - */ - String get(String table, String column, String key); - - /** - * Get a content in the table. - * Get a content in the table <b>table</b> from the column <b>column</b> - * where the key is <b>key</b>. - * -> get the content with the version <b>version</b>. - * @param table the table name. - * @param column the column name. - * @param key the key - * @param version - * @return the content - */ - String get(String table, String column, String key, int version); - - /** - * Get the row identified by the key <b>key<b> from the table <b>table</b> - * @param table the table name - * @param key the key - * @return a Map with key is column's name and value is content's value. - */ - Map<String, String> getRow(String table, String key); - - /** - * Get the keys from a table. - * @param table the table - * @return return a Set containing the keys a the table <b>table</b>. - */ - Set<String> getKeys(String table); -} Deleted: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap.java 2010-03-02 11:13:24 UTC (rev 156) @@ -1,31 +0,0 @@ -package org.nuiton.mapstoragemanager.plugins; - -import java.util.HashMap; -import java.util.Map; -import java.util.Set; - -public class OurHashMap implements BigTable { - - private Map<String, String> map = new HashMap<String, String>(); - - public String get(String key) { - return map.get(key); - } - - public Set<String> getKeys() { - return map.keySet(); - } - - public void put(String key, String value) { - map.put(key, value); - } - - public void connect(String host, String base, String username, - String password) { - // TODO Auto-generated method stub - } - - public void selectTable(String table) { - // TODO Auto-generated method stub - } -} 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-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/plugins/OurHashMap2.java 2010-03-02 11:13:24 UTC (rev 156) @@ -8,7 +8,7 @@ import java.util.Properties; import java.util.Set; -public class OurHashMap2 implements NewBigTable { +public class OurHashMap2 implements BigTable { private Map<String, ArrayList<String>> mapTable = new HashMap<String,ArrayList<String>>(); private Map<String, ArrayList<String>> mapColumn = new HashMap<String, ArrayList<String>>(); Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ColumnModel.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ColumnModel.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/ColumnModel.java 2010-03-02 11:13:24 UTC (rev 156) @@ -6,6 +6,7 @@ import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.TreeNode; import org.nuiton.mapstoragemanager.plugins.OurHashMap2; +import static org.nuiton.i18n.I18n._; /** * Model of a table content @@ -33,8 +34,8 @@ ApplicationEngine engine = ApplicationEngine.getInstance(); OurHashMap2 testHashmap2 = engine.getOurHashMap(); titres = new String[2]; - titres[0]="Key"; - titres[1]="Value"; + titres[0] = _("table.keys"); + titres[1] = _("table.values"); //content Set<String> keySetTable = testHashmap2.getKeys(table,column); Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/TableModel.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/TableModel.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/gui/TableModel.java 2010-03-02 11:13:24 UTC (rev 156) @@ -5,6 +5,7 @@ import javax.swing.table.AbstractTableModel; import javax.swing.tree.DefaultMutableTreeNode; import org.nuiton.mapstoragemanager.plugins.OurHashMap2; +import static org.nuiton.i18n.I18n._; /** * Model of a table content @@ -50,7 +51,7 @@ if(showTableKeys) { titles = new String[columnsNames.size() + 1]; - titles[0] = "Keys"; + titles[0] = _("table.keys"); data = new String[columnsNames.size() + 1][keySetTable.size()]; colIndex++; } else { Modified: trunk/msm/src/main/resources/i18n/msm-en_GB.properties =================================================================== --- trunk/msm/src/main/resources/i18n/msm-en_GB.properties 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/resources/i18n/msm-en_GB.properties 2010-03-02 11:13:24 UTC (rev 156) @@ -1,39 +1,41 @@ -Empty= -Map\ Storage\ Manager=Map Storage Manager -No\ help\ today,\ sorry\ \!=No help today, sorry \! -connectionError=The connection attempt to failed, please retry \! -jaxxdemo.message.goto.site=Visit site -jaxxdemo.tree.component= -keys= -login\ \:=Login -mapstoragemanager.action.aboutUs=About us -mapstoragemanager.action.aboutUs.tip=About Code Lutin -mapstoragemanager.action.connect=Connect -mapstoragemanager.action.connect.tip=Start a new connection -mapstoragemanager.action.disconnect=Disconnect -mapstoragemanager.action.disconnect.tip=Disconnect the current session -mapstoragemanager.action.edit=Edit -mapstoragemanager.action.edit.tip= -mapstoragemanager.action.exit=Exit -mapstoragemanager.action.exit.tip= -mapstoragemanager.action.file=File -mapstoragemanager.action.file.tip= -mapstoragemanager.action.fr=French -mapstoragemanager.action.fr.tip=Change to french language -mapstoragemanager.action.help=Help -mapstoragemanager.action.help.tip= -mapstoragemanager.action.language=Choose language -mapstoragemanager.action.language.tip= -mapstoragemanager.action.menuHelp=Help -mapstoragemanager.action.menuHelp.tip= -mapstoragemanager.action.preferences=Preferences -mapstoragemanager.action.preferences.tip= -mapstoragemanager.action.uk=English -mapstoragemanager.action.uk.tip=Change to english language -mapstoragemanager.action.visitSite=Visit our site -mapstoragemanager.action.visitSite.tip= -messageEntry=Welcome to MapStorageManager -name\ base\ \:=Name base -ok=Validate -password\ \:=Password -welcome.MapStorageManager=Welcome to MapStorageManager +Empty= +Map\ Storage\ Manager=Map Storage Manager +No\ help\ today,\ sorry\ \!=No help today, sorry \! +connectionError=The connection attempt to failed, please retry \! +jaxxdemo.message.goto.site=Visit site +jaxxdemo.tree.component= +keys= +login\ \:=Login +mapstoragemanager.action.aboutUs=About us +mapstoragemanager.action.aboutUs.tip=About Code Lutin +mapstoragemanager.action.connect=Connect +mapstoragemanager.action.connect.tip=Start a new connection +mapstoragemanager.action.disconnect=Disconnect +mapstoragemanager.action.disconnect.tip=Disconnect the current session +mapstoragemanager.action.edit=Edit +mapstoragemanager.action.edit.tip= +mapstoragemanager.action.exit=Exit +mapstoragemanager.action.exit.tip= +mapstoragemanager.action.file=File +mapstoragemanager.action.file.tip= +mapstoragemanager.action.fr=French +mapstoragemanager.action.fr.tip=Change to french language +mapstoragemanager.action.help=Help +mapstoragemanager.action.help.tip= +mapstoragemanager.action.language=Choose language +mapstoragemanager.action.language.tip= +mapstoragemanager.action.menuHelp=Help +mapstoragemanager.action.menuHelp.tip= +mapstoragemanager.action.preferences=Preferences +mapstoragemanager.action.preferences.tip= +mapstoragemanager.action.uk=English +mapstoragemanager.action.uk.tip=Change to english language +mapstoragemanager.action.visitSite=Visit our site +mapstoragemanager.action.visitSite.tip= +messageEntry=Welcome to MapStorageManager +name\ base\ \:=Name base +ok=Validate +password\ \:=Password +table.keys=Keys +table.values=Values +welcome.MapStorageManager=Welcome to MapStorageManager Modified: trunk/msm/src/main/resources/i18n/msm-fr_FR.properties =================================================================== --- trunk/msm/src/main/resources/i18n/msm-fr_FR.properties 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm/src/main/resources/i18n/msm-fr_FR.properties 2010-03-02 11:13:24 UTC (rev 156) @@ -1,39 +1,41 @@ -Empty=Vide -Map\ Storage\ Manager=Map Storage Manager -No\ help\ today,\ sorry\ \!=Pas d'aide pour l'instant, d\u00E9sol\u00E9 \! -connectionError=La connexion \u00E0 \u00E9chou\u00E9e, r\u00E9essayez s'il vous pla\u00EEt \! -jaxxdemo.message.goto.site=Visitez le site -jaxxdemo.tree.component= -keys= -login\ \:=Identifiant -mapstoragemanager.action.aboutUs=A propos -mapstoragemanager.action.aboutUs.tip=A propos de Code Lutin -mapstoragemanager.action.connect=Connexion -mapstoragemanager.action.connect.tip=Etablis une nouvelle connexion -mapstoragemanager.action.disconnect=D\u00E9connexion -mapstoragemanager.action.disconnect.tip=D\u00E9connecte la session courante -mapstoragemanager.action.edit=Edition -mapstoragemanager.action.edit.tip= -mapstoragemanager.action.exit=Quitter -mapstoragemanager.action.exit.tip=Quitte l'application -mapstoragemanager.action.file=Fichier -mapstoragemanager.action.file.tip= -mapstoragemanager.action.fr=Fran\u00E7ais -mapstoragemanager.action.fr.tip=Changer la langue en fran\u00E7ais -mapstoragemanager.action.help=Aide -mapstoragemanager.action.help.tip= -mapstoragemanager.action.language=choisir la langue -mapstoragemanager.action.language.tip= -mapstoragemanager.action.menuHelp=Aide -mapstoragemanager.action.menuHelp.tip=Aide contextuelle -mapstoragemanager.action.preferences=Pr\u00E9f\u00E9rences -mapstoragemanager.action.preferences.tip=Permet de configurer l'application -mapstoragemanager.action.uk=Anglais -mapstoragemanager.action.uk.tip=Changer la langue en anglais -mapstoragemanager.action.visitSite=Visiter notre site -mapstoragemanager.action.visitSite.tip= -messageEntry=Bienvenue dans MapStorageManager -name\ base\ \:=Nom de la base -ok=Valider -password\ \:=Mot de passe -welcome.MapStorageManager=Bienvenue dans MapStorageManager +Empty=Vide +Map\ Storage\ Manager=Map Storage Manager +No\ help\ today,\ sorry\ \!=Pas d'aide pour l'instant, d\u00E9sol\u00E9 \! +connectionError=La connexion \u00E0 \u00E9chou\u00E9e, r\u00E9essayez s'il vous pla\u00EEt \! +jaxxdemo.message.goto.site=Visitez le site +jaxxdemo.tree.component= +keys= +login\ \:=Identifiant +mapstoragemanager.action.aboutUs=A propos +mapstoragemanager.action.aboutUs.tip=A propos de Code Lutin +mapstoragemanager.action.connect=Connexion +mapstoragemanager.action.connect.tip=Etablis une nouvelle connexion +mapstoragemanager.action.disconnect=D\u00E9connexion +mapstoragemanager.action.disconnect.tip=D\u00E9connecte la session courante +mapstoragemanager.action.edit=Edition +mapstoragemanager.action.edit.tip= +mapstoragemanager.action.exit=Quitter +mapstoragemanager.action.exit.tip=Quitte l'application +mapstoragemanager.action.file=Fichier +mapstoragemanager.action.file.tip= +mapstoragemanager.action.fr=Fran\u00E7ais +mapstoragemanager.action.fr.tip=Changer la langue en fran\u00E7ais +mapstoragemanager.action.help=Aide +mapstoragemanager.action.help.tip= +mapstoragemanager.action.language=choisir la langue +mapstoragemanager.action.language.tip= +mapstoragemanager.action.menuHelp=Aide +mapstoragemanager.action.menuHelp.tip=Aide contextuelle +mapstoragemanager.action.preferences=Pr\u00E9f\u00E9rences +mapstoragemanager.action.preferences.tip=Permet de configurer l'application +mapstoragemanager.action.uk=Anglais +mapstoragemanager.action.uk.tip=Changer la langue en anglais +mapstoragemanager.action.visitSite=Visiter notre site +mapstoragemanager.action.visitSite.tip= +messageEntry=Bienvenue dans MapStorageManager +name\ base\ \:=Nom de la base +ok=Valider +password\ \:=Mot de passe +table.keys=Cl\u00E9s +table.values=Valeurs +welcome.MapStorageManager=Bienvenue dans MapStorageManager 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-02 11:01:50 UTC (rev 155) +++ trunk/msm-bighashmap/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmap/BigHashMap.java 2010-03-02 11:13:24 UTC (rev 156) @@ -4,14 +4,14 @@ import java.util.Map; import java.util.Properties; import java.util.Set; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; /** * Interface listant les méthodes nécéssaires sur une base de données. * @author Dorian Langlais * */ -public class BigHashMap implements NewBigTable { +public class BigHashMap implements BigTable { /** * tables. Modified: trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMap.java =================================================================== --- trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMap.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm-bighashmapV2/src/main/java/org/nuiton/mapstoragemanager/plugins/bighashmapv2/BigHashMap.java 2010-03-02 11:13:24 UTC (rev 156) @@ -4,14 +4,14 @@ import java.util.Map; import java.util.Properties; import java.util.Set; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; /** * Interface listant les méthodes nécéssaires sur une base de données. * @author Dorian Langlais * */ -public class BigHashMap implements NewBigTable { +public class BigHashMap implements BigTable { /** * tables. Property changes on: trunk/msm-fromtoXML ___________________________________________________________________ Added: svn:ignore + target 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-02 11:01:50 UTC (rev 155) +++ trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXML.java 2010-03-02 11:13:24 UTC (rev 156) @@ -17,7 +17,7 @@ import org.jdom.output.Format; import org.jdom.output.XMLOutputter; import org.nuiton.mapstoragemanager.plugins.Exporter; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; /** * A Class to export in xml files the content of Hbase database. @@ -38,7 +38,7 @@ * {@inheritDoc} */ @Override - public void exportTo(NewBigTable bigTable, File file) { + public void exportTo(BigTable bigTable, File file) { Element database = new Element("database"); document = new Document(database); @@ -56,7 +56,7 @@ * @param bigTable the bigTable. * @param database the database Element. */ - private void forEachTable(final NewBigTable bigTable, Element database) { + private void forEachTable(final BigTable bigTable, Element database) { // the tables name. Set<String> tablesNames = bigTable.getTablesNames(); @@ -80,7 +80,7 @@ * @param bigTable the bigTable. * @param table the table Element. */ - private void forEachColumn(final NewBigTable bigTable, Element table) { + private void forEachColumn(final BigTable bigTable, Element table) { // the table name. String tableName = table.getAttributeValue("tableName"); @@ -107,7 +107,7 @@ * @param bigTable the bigTable. * @param column the column Element. */ - private void forEachCell(final NewBigTable bigTable, Element column) { + private void forEachCell(final BigTable bigTable, Element column) { // the table name. String tableName = column.getParentElement().getAttributeValue("tableName"); 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-02 11:01:50 UTC (rev 155) +++ trunk/msm-fromtoXML/src/main/java/org/nuiton/mapstoragemanager/plugins/importer/FromXML.java 2010-03-02 11:13:24 UTC (rev 156) @@ -19,7 +19,7 @@ import org.jdom.output.Format; import org.jdom.output.XMLOutputter; import org.nuiton.mapstoragemanager.plugins.Importer; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; /** * @@ -40,7 +40,7 @@ * {@inheritDoc} */ @Override - public void importFrom(NewBigTable bigTable, File file) { + public void importFrom(BigTable bigTable, File file) { try { open(file); @@ -61,7 +61,7 @@ * @param bigTable the bigTable. * @param database the database Element. */ - private void forEachTable(NewBigTable bigTable, final Element database) { + private void forEachTable(BigTable bigTable, final Element database) { // the table elements. List<Element> tables = database.getChildren("table"); @@ -80,7 +80,7 @@ * @param bigTable the bigTable. * @param table the table Element. */ - private void forEachColumn(NewBigTable bigTable, final Element table) { + private void forEachColumn(BigTable bigTable, final Element table) { // the table name. String tableName = table.getAttributeValue("tableName"); @@ -102,7 +102,7 @@ * @param bigTable the bigTable. * @param column the column Element. */ - private void forEachCell(NewBigTable bigTable, final Element column) { + private void forEachCell(BigTable bigTable, final Element column) { // the table name. String tableName = column.getParentElement().getAttributeValue("tableName"); Modified: trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLTest.java =================================================================== --- trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLTest.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/exporter/ToXMLTest.java 2010-03-02 11:13:24 UTC (rev 156) @@ -17,7 +17,7 @@ //import org.jdom.output.Format; //import org.jdom.output.XMLOutputter; import org.nuiton.mapstoragemanager.plugins.Exporter; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; import org.nuiton.mapstoragemanager.plugins.AssertJdomElement; import org.nuiton.mapstoragemanager.plugins.bighashmapv2.BigHashMap; import org.nuiton.mapstoragemanager.plugins.getFile; @@ -62,7 +62,7 @@ /******************************** * Creation of the database. * ********************************/ - NewBigTable nbt = new BigHashMap(); + BigTable nbt = new BigHashMap(); Element database = new Element("database"); expected.addContent(database); @@ -252,33 +252,33 @@ * @param args args. */ public static void main(String[] args) { - NewBigTable nbt = new BigHashMap(); - nbt.createTable("table1"); - nbt.createTable("table2"); + BigTable bt = new BigHashMap(); + bt.createTable("table1"); + bt.createTable("table2"); - nbt.createColumn("table1", "column1"); - nbt.createColumn("table1", "column2"); + bt.createColumn("table1", "column1"); + bt.createColumn("table1", "column2"); - nbt.createColumn("table2", "column3"); - nbt.createColumn("table2", "column4"); - nbt.createColumn("table2", "column5"); + bt.createColumn("table2", "column3"); + bt.createColumn("table2", "column4"); + bt.createColumn("table2", "column5"); - nbt.put("table1", "column1", "1", "content1"); - nbt.put("table1", "column1", "2", "content2"); - nbt.put("table1", "column2", "3", "content3"); - nbt.put("table1", "column2", "4", "content4"); + bt.put("table1", "column1", "1", "content1"); + bt.put("table1", "column1", "2", "content2"); + bt.put("table1", "column2", "3", "content3"); + bt.put("table1", "column2", "4", "content4"); - nbt.put("table2", "column3", "5", "content5"); - nbt.put("table2", "column3", "6", "content6"); - nbt.put("table2", "column4", "7", "content7"); - nbt.put("table2", "column4", "8", "content8"); - nbt.put("table2", "column5", "9", "content9"); - nbt.put("table2", "column5", "10", "content10"); + bt.put("table2", "column3", "5", "content5"); + bt.put("table2", "column3", "6", "content6"); + bt.put("table2", "column4", "7", "content7"); + bt.put("table2", "column4", "8", "content8"); + bt.put("table2", "column5", "9", "content9"); + bt.put("table2", "column5", "10", "content10"); Exporter exporter = new ToXML(); File exportTest = getFile.getTestFile("/src/test/resources/exportTest.xml"); - exporter.exportTo(nbt,exportTest); + exporter.exportTo(bt,exportTest); exportTest.delete(); } } Modified: trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLTest.java =================================================================== --- trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLTest.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm-fromtoXML/src/test/java/org/nuiton/mapstoragemanager/plugins/importer/FromXMLTest.java 2010-03-02 11:13:24 UTC (rev 156) @@ -15,7 +15,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.mapstoragemanager.plugins.Importer; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; +import org.nuiton.mapstoragemanager.plugins.BigTable; import org.nuiton.mapstoragemanager.plugins.bighashmapv2.BigHashMap; import org.nuiton.mapstoragemanager.plugins.getFile; @@ -45,7 +45,7 @@ // import fiveTables. Importer importer = new FromXML(); - NewBigTable bigTable = new BigHashMap(); + BigTable bigTable = new BigHashMap(); importer.importFrom(bigTable, fiveTables); @@ -86,7 +86,7 @@ // import fiveTables. Importer importer = new FromXML(); - NewBigTable bigTable = new BigHashMap(); + BigTable bigTable = new BigHashMap(); importer.importFrom(bigTable, twoTablesFiveColumns); @@ -143,7 +143,7 @@ // import fiveTables. Importer importer = new FromXML(); - NewBigTable bigTable = new BigHashMap(); + BigTable bigTable = new BigHashMap(); importer.importFrom(bigTable, twoTablesFiveColumns); Modified: trunk/msm-hbase/pom.xml =================================================================== --- trunk/msm-hbase/pom.xml 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm-hbase/pom.xml 2010-03-02 11:13:24 UTC (rev 156) @@ -199,6 +199,15 @@ <packaging>jar</packaging> <build> + + <resources> + <resource> + <directory>src/main/java/org/nuiton/mapstoragemanager/plugins/hbase</directory> + <excludes> + <exclude>OLDHBase.java</exclude> + </excludes> + </resource> + </resources> <!--<plugins> Deleted: 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-02 11:01:50 UTC (rev 155) +++ trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java 2010-03-02 11:13:24 UTC (rev 156) @@ -1,176 +0,0 @@ -package org.nuiton.mapstoragemanager.plugins.hbase; - -import java.io.IOException; -import java.util.HashSet; -import java.util.Set; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.nuiton.mapstoragemanager.plugins.BigTable; - -import org.apache.hadoop.hbase.HBaseConfiguration; -//import org.apache.hadoop.hbase.client.Get; -import org.apache.hadoop.hbase.client.HTable; -import org.apache.hadoop.hbase.client.Put; -import org.apache.hadoop.hbase.client.Result; -import org.apache.hadoop.hbase.client.ResultScanner; -import org.apache.hadoop.hbase.client.Scan; -import org.apache.hadoop.hbase.util.Bytes; - -public class HBase implements BigTable { - - /** - * Logger. - */ - private static final Log LOG = LogFactory.getLog(HBase.class); - - private HBaseConfiguration config; - private HTable table; - private String familyName = "mylittlecolumnfamily"; - private String rowName = "myLittleRow"; - private String tableName = "mylittletable"; - - public HBase() { - // You need a configuration object to tell the client where to connect. - // When you create a HBaseConfiguration, it reads in whatever you've set - // into your hbase-site.xml and in hbase-default.xml, as long as these can - // be found on the CLASSPATH - org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration(); - config = new HBaseConfiguration(conf); - LOG.info("test"); - selectTable(tableName); - put("test", "val"); - put("test", "val2"); - put("test2", "val3"); - } - - @Override - public void put(String key, String value) { - - // To add to a row, use Put. A Put constructor takes the name of the row - // you want to insert into as a byte array. In HBase, the Bytes class has - // utility for converting all kinds of java types to byte arrays. In the - // below, we are converting the String "myLittleRow" into a byte array to - // use as a row key for our update. Once you have a Put instance, you can - // adorn it by setting the names of columns you want to update on the row, - // the timestamp to use in your update, etc.If no timestamp, the server - // applies current time to the edits. - Put p = new Put(Bytes.toBytes(rowName)); - - // To set the value you'd like to update in the row 'myRow', specify the - // column family, column qualifier, and value of the table cell you'd like - // to update. The column family must already exist in your table schema. - // The qualifier can be anything. All must be specified as byte arrays as - // hbase is all about byte arrays. Lets pretend the table - // 'myLittleHBaseTable' was created with a family 'myLittleFamily'. - p.add(Bytes.toBytes(familyName), Bytes.toBytes(key), - Bytes.toBytes(value)); - - // Once you've adorned your Put instance with all the updates you want to - // make, to commit it do the following (The HTable#put method takes the - // Put instance you've been building and pushes the changes you made into - // hbase) - - /*try { - table.put(p); - } catch (IOException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } - */ - } - - @Override - public String get(String key) { - - // Now, to retrieve the data we just wrote. The values that come back are - // Result instances. Generally, a Result is an object that will package up - // the hbase return into the form you find most palatable. - /**Get g = new Get(Bytes.toBytes(rowName)); - Result r;*/ - byte[] value = null; -// try { -// r = table.get(g); -// value = r.getValue(Bytes.toBytes(familyName), -// Bytes.toBytes(key)); -// } catch (IOException e) { -// e.printStackTrace(); -// } - - // If we convert the value bytes, we should get back 'Some Value', the - // value we inserted at this location. - /**String valueStr = Bytes.toString(value);*/ - - return "valeur"; - //return valueStr; - } - - @Override - public Set<String> getKeys() { - - Set<String> keySet = new HashSet<String>(); - - // Sometimes, you won't know the row you're looking for. In this case, you - // use a Scanner. This will give you cursor-like interface to the contents - // of the table. To set up a Scanner, do like you did above making a Put - // and a Get, create a Scan. Adorn it with column names, etc. - Scan s = new Scan(); - //s.addColumn(Bytes.toBytes(familyName), Bytes.toBytes("test")); - ResultScanner scanner = null; - try { - scanner = table.getScanner(s); - } catch (IOException e) { - // TODO Auto-generated catch block - //e.printStackTrace(); - LOG.error(e.toString(), e); - } - try { - // Scanners return Result instances. - // Now, for the actual iteration. One way is to use a while loop like so: - try { - for (Result rr = scanner.next(); rr != null; rr = scanner.next()) { - // print out the row we found and the columns we were looking for - //System.out.println("Found row: " + rr); - LOG.info("Found row: " + rr); - keySet.add(rr.toString()); - } - - } catch (IOException e) { - // TODO Auto-generated catch block - //e.printStackTrace(); - LOG.error(e.toString(), e); - } - - // The other approach is to use a foreach loop. Scanners are iterable! - // for (Result rr : scanner) { - // System.out.println("Found row: " + rr); - // } - } finally { - // Make sure you close your scanners when you are done! - // Thats why we have it inside a try/finally clause - scanner.close(); - } - - return keySet; - } - - public void selectTable(String tableName) { - // This instantiates an HTable object that connects you to - // the "myLittleHBaseTable" table. - try { - table = new HTable(config, tableName); - } catch (IOException e) { - //e.printStackTrace(); - LOG.error(e.toString(), e); - } - } - - @Override - public void connect(String host, String base, String username, - String password) { - // TODO Auto-generated method stub - } - - public static void main(String[] args) { - /**HBase h = */new HBase(); - } -} Copied: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java (from rev 152, trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBaseNewBigTable.java) =================================================================== --- trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java (rev 0) +++ trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java 2010-03-02 11:13:24 UTC (rev 156) @@ -0,0 +1,314 @@ +package org.nuiton.mapstoragemanager.plugins.hbase; + +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 org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.hbase.MasterNotRunningException; +import org.nuiton.mapstoragemanager.plugins.BigTable; + +import org.apache.hadoop.hbase.HBaseConfiguration; +import org.apache.hadoop.hbase.HColumnDescriptor; +import org.apache.hadoop.hbase.HTableDescriptor; +import org.apache.hadoop.hbase.client.Get; +import org.apache.hadoop.hbase.client.HBaseAdmin; +import org.apache.hadoop.hbase.client.HTable; +import org.apache.hadoop.hbase.client.Put; +import org.apache.hadoop.hbase.client.Result; + +/** + * A plugin for MSM using HBase API. + * @author Dorian Langlais + */ +public class HBase implements BigTable { + + /** + * Logger. + */ + private static final Log LOG = LogFactory.getLog(HBase.class); + + /** + * HBaseAdmin. + * Permit to manage the HBase. + */ + private HBaseAdmin hBaseAdmin; + /** + * HBaseConfiguration. + * Contains the configuration to connect to the HBase. + */ + private HBaseConfiguration config; + /** + * The selected Table. + */ + private HTable selectedTable; +// private HTable table; +// private String familyName = "mylittlecolumnfamily"; +// private String rowName = "myLittleRow"; +// private String tableName = "mylittletable"; + + /** + * HBase plugin Constructor. + * @throws MasterNotRunningException + */ + public HBase() throws MasterNotRunningException { + // You need a configuration object to tell the client where to connect. + // When you create a HBaseConfiguration, it reads in whatever you've set + // into your hbase-site.xml and in hbase-default.xml, as long as these can + // be found on the CLASSPATH + org.apache.hadoop.conf.Configuration conf = + new org.apache.hadoop.conf.Configuration(); + config = new HBaseConfiguration(conf); + hBaseAdmin = new HBaseAdmin(config); + } + + /** + * {@inheritDoc} + */ + public boolean connect(Properties properties) { + throw new UnsupportedOperationException("Not supported yet."); + } + + /** + * {@inheritDoc} + */ + public void createTable(String table) { + HTableDescriptor hTableDescriptor = new HTableDescriptor(table); + try { + hBaseAdmin.createTable(hTableDescriptor); + LOG.trace("table " + table + " created."); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } + + /** + * {@inheritDoc} + */ + public void deleteTable(String table) { + try { + // to delete a table, we have to disable it. + hBaseAdmin.disableTable(table); + hBaseAdmin.deleteTable(table); + LOG.trace("table " + table + " deleted."); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } + + /** + * {@inheritDoc} + */ + public Set<String> getTablesNames() { + Set<String> tablesNames = new HashSet<String>(); + try { + HTableDescriptor[] hTablesDescriptor; + hTablesDescriptor = hBaseAdmin.listTables(); + + for (int i = 0 ; i < hTablesDescriptor.length ; i++) { + tablesNames.add(hTablesDescriptor[i].getNameAsString()); + } + + } catch (IOException ex) { + LOG.error(ex, ex); + } + return tablesNames; + } + + /** + * {@inheritDoc} + */ + public void createColumn(String table, String column) { + HColumnDescriptor hColumnDescriptor = new HColumnDescriptor(column); + try { + hBaseAdmin.addColumn(table, hColumnDescriptor); + LOG.trace("colum " + column + " created in table " + table + "."); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } + + /** + * {@inheritDoc} + */ + public void deleteColumn(String table, String column) { + try { + hBaseAdmin.deleteColumn(table, column); + LOG.trace("colum " + column + " deleted from table " + table + "."); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } + + /** + * {@inheritDoc} + */ + public Set<String> getColumnsNames(String table) { + Set<String> columnsNames = new HashSet<String>(); + try { + if (hBaseAdmin.tableExists(table)) { + HTableDescriptor hTableDescriptor; + hTableDescriptor = + hBaseAdmin.getTableDescriptor(table.getBytes()); + + HColumnDescriptor[] hColumnsDescriptor; + hColumnsDescriptor = hTableDescriptor.getColumnFamilies(); + + for (int i = 0 ; i < hColumnsDescriptor.length ; i++) { + columnsNames.add(hColumnsDescriptor[i].getNameAsString()); + } + + } else { + try { + throw new NoSuchTableException(table); + } catch (NoSuchTableException ex) { + LOG.error(ex, ex); + } + } + } catch (MasterNotRunningException ex) { + LOG.error(ex, ex); + } catch (IOException ex) { + LOG.error(ex, ex); + } + return columnsNames; + } + + /** + * {@inheritDoc} + */ + public void put(String table, String column, String key, String content) { + try { + Put put = new Put(key.getBytes()); + put.add(column.getBytes(), key.getBytes(), content.getBytes()); + + //HTable hTable = new HTable(config, table); + synchronized (selectedTable) { + this.selectTable(table); + this.selectedTable.put(put); + } + + LOG.trace("put " + table + " " + column + " " + key + " " + content); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } + + /** + * {@inheritDoc} + */ + public String get(String table, String column, String key) { + String ret = ""; + try { + Get get = new Get(key.getBytes()); + get = get.addColumn(column.getBytes()); + + //HTable hTable = new HTable(config, table); + Result result; + synchronized (selectedTable) { + this.selectTable(table); + result = this.selectedTable.get(get); + } + + ret = result.getCellValue().toString(); + + LOG.trace("put " + table + " " + column + " " + key + " " + ret); + } catch (IOException ex) { + LOG.error(ex, ex); + } + return ret; + } + + /** + * {@inheritDoc} + */ + public String get(String table, String column, String key, int version) { + String ret = ""; + try { + Get get = new Get(key.getBytes()); + get = get.addColumn(column.getBytes()); + get = get.setTimeStamp(version); + + //HTable hTable = new HTable(config, table); + Result result; + synchronized (selectedTable) { + this.selectTable(table); + result = this.selectedTable.get(get); + } + + ret = result.getCellValue().toString(); + + LOG.trace("put " + table + " " + column + " " + key + " " + ret + + " " + version); + } catch (IOException ex) { + LOG.error(ex, ex); + } + return ret; + } + + /** + * {@inheritDoc} + */ + public Map<String, String> getRow(String table, String key) { + Map<String, String> ret = new HashMap<String, String>(); + try { + for (String column : this.getColumnsNames(table)) { + Get get = new Get(key.getBytes()); + get = get.addColumn(column.getBytes()); + + //HTable hTable = new HTable(config, table); + Result result; + synchronized (selectedTable) { + this.selectTable(table); + result = this.selectedTable.get(get); + } + + String columnContent = result.getCellValue().toString(); + + ret.put(column, columnContent); + } + + + LOG.trace("row " + key + " " + ret.toString()); + } catch (IOException ex) { + LOG.error(ex, ex); + } + return ret; + } + + /** + * {@inheritDoc} + */ + public Set<String> getKeys(String table) { + Set<String> ret = new HashSet<String>(); + try { + + synchronized (selectedTable) { + this.selectTable(table); + Set<byte[]> familiesKeys; + familiesKeys = + this.selectedTable.getTableDescriptor().getFamiliesKeys(); + for (byte[] key : familiesKeys) { + ret.add(key.toString()); + } + } + + } catch (IOException ex) { + LOG.error(ex, ex); + } + return ret; + } + + /** + * {@inheritDoc} + */ + public void selectTable(String table) { + try { + selectedTable = new HTable(config, table); + } catch (IOException ex) { + LOG.error(ex, ex); + } + } +} Property changes on: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java ___________________________________________________________________ Added: svn:mergeinfo + Deleted: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBaseNewBigTable.java =================================================================== --- trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBaseNewBigTable.java 2010-03-02 11:01:50 UTC (rev 155) +++ trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBaseNewBigTable.java 2010-03-02 11:13:24 UTC (rev 156) @@ -1,314 +0,0 @@ -package org.nuiton.mapstoragemanager.plugins.hbase; - -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 org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.hadoop.hbase.MasterNotRunningException; -import org.nuiton.mapstoragemanager.plugins.NewBigTable; - -import org.apache.hadoop.hbase.HBaseConfiguration; -import org.apache.hadoop.hbase.HColumnDescriptor; -import org.apache.hadoop.hbase.HTableDescriptor; -import org.apache.hadoop.hbase.client.Get; -import org.apache.hadoop.hbase.client.HBaseAdmin; -import org.apache.hadoop.hbase.client.HTable; -import org.apache.hadoop.hbase.client.Put; -import org.apache.hadoop.hbase.client.Result; - -/** - * A plugin for MSM using HBase API. - * @author Dorian Langlais - */ -public class HBaseNewBigTable implements NewBigTable { - - /** - * Logger. - */ - private static final Log LOG = LogFactory.getLog(NewBigTable.class); - - /** - * HBaseAdmin. - * Permit to manage the HBase. - */ - private HBaseAdmin hBaseAdmin; - /** - * HBaseConfiguration. - * Contains the configuration to connect to the HBase. - */ - private HBaseConfiguration config; - /** - * The selected Table. - */ - private HTable selectedTable; -// private HTable table; -// private String familyName = "mylittlecolumnfamily"; -// private String rowName = "myLittleRow"; -// private String tableName = "mylittletable"; - - /** - * HBase plugin Constructor. - * @throws MasterNotRunningException - */ - public HBaseNewBigTable() throws MasterNotRunningException { - // You need a configuration object to tell the client where to connect. - // When you create a HBaseConfiguration, it reads in whatever you've set - // into your hbase-site.xml and in hbase-default.xml, as long as these can - // be found on the CLASSPATH - org.apache.hadoop.conf.Configuration conf = - new org.apache.hadoop.conf.Configuration(); - config = new HBaseConfiguration(conf); - hBaseAdmin = new HBaseAdmin(config); - } - - /** - * {@inheritDoc} - */ - public boolean connect(Properties properties) { - throw new UnsupportedOperationException("Not supported yet."); - } - - /** - * {@inheritDoc} - */ - public void createTable(String table) { - HTableDescriptor hTableDescriptor = new HTableDescriptor(table); - try { - hBaseAdmin.createTable(hTableDescriptor); - LOG.trace("table " + table + " created."); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } - - /** - * {@inheritDoc} - */ - public void deleteTable(String table) { - try { - // to delete a table, we have to disable it. - hBaseAdmin.disableTable(table); - hBaseAdmin.deleteTable(table); - LOG.trace("table " + table + " deleted."); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } - - /** - * {@inheritDoc} - */ - public Set<String> getTablesNames() { - Set<String> tablesNames = new HashSet<String>(); - try { - HTableDescriptor[] hTablesDescriptor; - hTablesDescriptor = hBaseAdmin.listTables(); - - for (int i = 0 ; i < hTablesDescriptor.length ; i++) { - tablesNames.add(hTablesDescriptor[i].getNameAsString()); - } - - } catch (IOException ex) { - LOG.error(ex, ex); - } - return tablesNames; - } - - /** - * {@inheritDoc} - */ - public void createColumn(String table, String column) { - HColumnDescriptor hColumnDescriptor = new HColumnDescriptor(column); - try { - hBaseAdmin.addColumn(table, hColumnDescriptor); - LOG.trace("colum " + column + " created in table " + table + "."); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } - - /** - * {@inheritDoc} - */ - public void deleteColumn(String table, String column) { - try { - hBaseAdmin.deleteColumn(table, column); - LOG.trace("colum " + column + " deleted from table " + table + "."); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } - - /** - * {@inheritDoc} - */ - public Set<String> getColumnsNames(String table) { - Set<String> columnsNames = new HashSet<String>(); - try { - if (hBaseAdmin.tableExists(table)) { - HTableDescriptor hTableDescriptor; - hTableDescriptor = - hBaseAdmin.getTableDescriptor(table.getBytes()); - - HColumnDescriptor[] hColumnsDescriptor; - hColumnsDescriptor = hTableDescriptor.getColumnFamilies(); - - for (int i = 0 ; i < hColumnsDescriptor.length ; i++) { - columnsNames.add(hColumnsDescriptor[i].getNameAsString()); - } - - } else { - try { - throw new NoSuchTableException(table); - } catch (NoSuchTableException ex) { - LOG.error(ex, ex); - } - } - } catch (MasterNotRunningException ex) { - LOG.error(ex, ex); - } catch (IOException ex) { - LOG.error(ex, ex); - } - return columnsNames; - } - - /** - * {@inheritDoc} - */ - public void put(String table, String column, String key, String content) { - try { - Put put = new Put(key.getBytes()); - put.add(column.getBytes(), key.getBytes(), content.getBytes()); - - //HTable hTable = new HTable(config, table); - synchronized (selectedTable) { - this.selectTable(table); - this.selectedTable.put(put); - } - - LOG.trace("put " + table + " " + column + " " + key + " " + content); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } - - /** - * {@inheritDoc} - */ - public String get(String table, String column, String key) { - String ret = ""; - try { - Get get = new Get(key.getBytes()); - get = get.addColumn(column.getBytes()); - - //HTable hTable = new HTable(config, table); - Result result; - synchronized (selectedTable) { - this.selectTable(table); - result = this.selectedTable.get(get); - } - - ret = result.getCellValue().toString(); - - LOG.trace("put " + table + " " + column + " " + key + " " + ret); - } catch (IOException ex) { - LOG.error(ex, ex); - } - return ret; - } - - /** - * {@inheritDoc} - */ - public String get(String table, String column, String key, int version) { - String ret = ""; - try { - Get get = new Get(key.getBytes()); - get = get.addColumn(column.getBytes()); - get = get.setTimeStamp(version); - - //HTable hTable = new HTable(config, table); - Result result; - synchronized (selectedTable) { - this.selectTable(table); - result = this.selectedTable.get(get); - } - - ret = result.getCellValue().toString(); - - LOG.trace("put " + table + " " + column + " " + key + " " + ret - + " " + version); - } catch (IOException ex) { - LOG.error(ex, ex); - } - return ret; - } - - /** - * {@inheritDoc} - */ - public Map<String, String> getRow(String table, String key) { - Map<String, String> ret = new HashMap<String, String>(); - try { - for (String column : this.getColumnsNames(table)) { - Get get = new Get(key.getBytes()); - get = get.addColumn(column.getBytes()); - - //HTable hTable = new HTable(config, table); - Result result; - synchronized (selectedTable) { - this.selectTable(table); - result = this.selectedTable.get(get); - } - - String columnContent = result.getCellValue().toString(); - - ret.put(column, columnContent); - } - - - LOG.trace("row " + key + " " + ret.toString()); - } catch (IOException ex) { - LOG.error(ex, ex); - } - return ret; - } - - /** - * {@inheritDoc} - */ - public Set<String> getKeys(String table) { - Set<String> ret = new HashSet<String>(); - try { - - synchronized (selectedTable) { - this.selectTable(table); - Set<byte[]> familiesKeys; - familiesKeys = - this.selectedTable.getTableDescriptor().getFamiliesKeys(); - for (byte[] key : familiesKeys) { - ret.add(key.toString()); - } - } - - } catch (IOException ex) { - LOG.error(ex, ex); - } - return ret; - } - - /** - * {@inheritDoc} - */ - public void selectTable(String table) { - try { - selectedTable = new HTable(config, table); - } catch (IOException ex) { - LOG.error(ex, ex); - } - } -} Copied: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/OLDHBase.java (from rev 152, trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/HBase.java) =================================================================== --- trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/OLDHBase.java (rev 0) +++ trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/OLDHBase.java 2010-03-02 11:13:24 UTC (rev 156) @@ -0,0 +1,176 @@ +package org.nuiton.mapstoragemanager.plugins.hbase; + +import java.io.IOException; +import java.util.HashSet; +import java.util.Set; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +//import org.nuiton.mapstoragemanager.plugins.BigTable; + +import org.apache.hadoop.hbase.HBaseConfiguration; +//import org.apache.hadoop.hbase.client.Get; +import org.apache.hadoop.hbase.client.HTable; +import org.apache.hadoop.hbase.client.Put; +import org.apache.hadoop.hbase.client.Result; +import org.apache.hadoop.hbase.client.ResultScanner; +import org.apache.hadoop.hbase.client.Scan; +import org.apache.hadoop.hbase.util.Bytes; + +public class OLDHBase /*implements "old"BigTable*/ { + + /** + * Logger. + */ + private static final Log LOG = LogFactory.getLog(OLDHBase.class); + + private HBaseConfiguration config; + private HTable table; + private String familyName = "mylittlecolumnfamily"; + private String rowName = "myLittleRow"; + private String tableName = "mylittletable"; + + public OLDHBase() { + // You need a configuration object to tell the client where to connect. + // When you create a HBaseConfiguration, it reads in whatever you've set + // into your hbase-site.xml and in hbase-default.xml, as long as these can + // be found on the CLASSPATH + org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration(); + config = new HBaseConfiguration(conf); + LOG.info("test"); + selectTable(tableName); + put("test", "val"); + put("test", "val2"); + put("test2", "val3"); + } + +// @Override + public void put(String key, String value) { + + // To add to a row, use Put. A Put constructor takes the name of the row + // you want to insert into as a byte array. In HBase, the Bytes class has + // utility for converting all kinds of java types to byte arrays. In the + // below, we are converting the String "myLittleRow" into a byte array to + // use as a row key for our update. Once you have a Put instance, you can + // adorn it by setting the names of columns you want to update on the row, + // the timestamp to use in your update, etc.If no timestamp, the server + // applies current time to the edits. + Put p = new Put(Bytes.toBytes(rowName)); + + // To set the value you'd like to update in the row 'myRow', specify the + // column family, column qualifier, and value of the table cell you'd like + // to update. The column family must already exist in your table schema. + // The qualifier can be anything. All must be specified as byte arrays as + // hbase is all about byte arrays. Lets pretend the table + // 'myLittleHBaseTable' was created with a family 'myLittleFamily'. + p.add(Bytes.toBytes(familyName), Bytes.toBytes(key), + Bytes.toBytes(value)); + + // Once you've adorned your Put instance with all the updates you want to + // make, to commit it do the following (The HTable#put method takes the + // Put instance you've been building and pushes the changes you made into + // hbase) + + /*try { + table.put(p); + } catch (IOException e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + */ + } + +// @Override + public String get(String key) { + + // Now, to retrieve the data we just wrote. The values that come back are + // Result instances. Generally, a Result is an object that will package up + // the hbase return into the form you find most palatable. + /**Get g = new Get(Bytes.toBytes(rowName)); + Result r;*/ + byte[] value = null; +// try { +// r = table.get(g); +// value = r.getValue(Bytes.toBytes(familyName), +// Bytes.toBytes(key)); +// } catch (IOException e) { +// e.printStackTrace(); +// } + + // If we convert the value bytes, we should get back 'Some Value', the + // value we inserted at this location. + /**String valueStr = Bytes.toString(value);*/ + + return "valeur"; + //return valueStr; + } + +// @Override + public Set<String> getKeys() { + + Set<String> keySet = new HashSet<String>(); + + // Sometimes, you won't know the row you're looking for. In this case, you + // use a Scanner. This will give you cursor-like interface to the contents + // of the table. To set up a Scanner, do like you did above making a Put + // and a Get, create a Scan. Adorn it with column names, etc. + Scan s = new Scan(); + //s.addColumn(Bytes.toBytes(familyName), Bytes.toBytes("test")); + ResultScanner scanner = null; + try { + scanner = table.getScanner(s); + } catch (IOException e) { + // TODO Auto-generated catch block + //e.printStackTrace(); + LOG.error(e.toString(), e); + } + try { + // Scanners return Result instances. + // Now, for the actual iteration. One way is to use a while loop like so: + try { + for (Result rr = scanner.next(); rr != null; rr = scanner.next()) { + // print out the row we found and the columns we were looking for + //System.out.println("Found row: " + rr); + LOG.info("Found row: " + rr); + keySet.add(rr.toString()); + } + + } catch (IOException e) { + // TODO Auto-generated catch block + //e.printStackTrace(); + LOG.error(e.toString(), e); + } + + // The other approach is to use a foreach loop. Scanners are iterable! + // for (Result rr : scanner) { + // System.out.println("Found row: " + rr); + // } + } finally { + // Make sure you close your scanners when you are done! + // Thats why we have it inside a try/finally clause + scanner.close(); + } + + return keySet; + } + + public void selectTable(String tableName) { + // This instantiates an HTable object that connects you to + // the "myLittleHBaseTable" table. + try { + table = new HTable(config, tableName); + } catch (IOException e) { + //e.printStackTrace(); + LOG.error(e.toString(), e); + } + } + +// @Override + public void connect(String host, String base, String username, + String password) { + // TODO Auto-generated method stub + } + + public static void main(String[] args) { + /**HBase h = */new OLDHBase(); + } +} Property changes on: trunk/msm-hbase/src/main/java/org/nuiton/mapstoragemanager/plugins/hbase/OLDHBase.java ___________________________________________________________________ Added: svn:mergeinfo +