[Mongobrowser-commit] SF.net SVN: mongobrowser:[29] trunk/mongobrowser/src/com/mebigfatguy/ mongobr
Status: Pre-Alpha
Brought to you by:
dbrosius
From: <dbr...@us...> - 2009-12-25 05:48:41
|
Revision: 29 http://mongobrowser.svn.sourceforge.net/mongobrowser/?rev=29&view=rev Author: dbrosius Date: 2009-12-25 05:48:34 +0000 (Fri, 25 Dec 2009) Log Message: ----------- cleanup the user object handling Modified Paths: -------------- trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoDataPanel.java trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoTreeNode.java Modified: trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoDataPanel.java =================================================================== --- trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoDataPanel.java 2009-12-25 05:29:10 UTC (rev 28) +++ trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoDataPanel.java 2009-12-25 05:48:34 UTC (rev 29) @@ -69,11 +69,10 @@ if (db != null) { Set<String> collectionNames = db.getCollectionNames(); for (String collectionName : collectionNames) { - MongoTreeNode col = new MongoTreeNode(MongoTreeNode.Type.Collection, collectionName); DBCollection collection = db.getCollection(collectionName); - col.setUserObject(collection); + MongoTreeNode col = new MongoTreeNode(MongoTreeNode.Type.Collection, collection); root.add(col); - MongoTreeNode slug = new MongoTreeNode(MongoTreeNode.Type.ExpansionSlug, ""); + MongoTreeNode slug = new MongoTreeNode(MongoTreeNode.Type.ExpansionSlug, null); col.add(slug); } } else { @@ -93,7 +92,7 @@ private void initComponents() { setLayout(new BorderLayout(4, 4)); - MongoTreeNode root = new MongoTreeNode(MongoTreeNode.Type.Root, "root"); + MongoTreeNode root = new MongoTreeNode(MongoTreeNode.Type.Root, null); tree = new JTree(root); tree.setRootVisible(false); tree.setShowsRootHandles(true); @@ -155,8 +154,7 @@ DBCursor cursor = collection.find(); while (cursor.hasNext()) { DBObject obj = cursor.next(); - MongoTreeNode objNode = new MongoTreeNode(MongoTreeNode.Type.Object, objectName); - objNode.setUserObject(obj); + MongoTreeNode objNode = new MongoTreeNode(MongoTreeNode.Type.Object, obj); node.add(objNode); slug = new MongoTreeNode(MongoTreeNode.Type.ExpansionSlug, ""); objNode.add(slug); @@ -194,8 +192,7 @@ DBCollection dbCollection = db.getCollection(collectionName); DefaultTreeModel model = (DefaultTreeModel)tree.getModel(); MongoTreeNode root = (MongoTreeNode)model.getRoot(); - MongoTreeNode collectionNode = new MongoTreeNode(MongoTreeNode.Type.Collection, collectionName); - collectionNode.setUserObject(dbCollection); + MongoTreeNode collectionNode = new MongoTreeNode(MongoTreeNode.Type.Collection, dbCollection); root.add(collectionNode); model.nodeStructureChanged(root); } @@ -205,19 +202,15 @@ newObjectItem.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent ae) { - String objectName = JOptionPane.showInputDialog(tree, MongoBundle.getString(MongoBundle.Key.NewCollection)); - if (objectName != null) { - TreePath path = tree.getSelectionPath(); - MongoTreeNode collectionNode = (MongoTreeNode)path.getLastPathComponent(); - DBCollection dbCollection = (DBCollection) collectionNode.getUserObject(); - BasicDBObject dbObj = new BasicDBObject(); - dbCollection.insert(dbObj); - DefaultTreeModel model = (DefaultTreeModel)tree.getModel(); - MongoTreeNode objectNode = new MongoTreeNode(MongoTreeNode.Type.Object, objectName); - objectNode.setUserObject(dbObj); - collectionNode.add(objectNode); - model.nodeStructureChanged((MongoTreeNode)model.getRoot()); - } + TreePath path = tree.getSelectionPath(); + MongoTreeNode collectionNode = (MongoTreeNode)path.getLastPathComponent(); + DBCollection dbCollection = (DBCollection) collectionNode.getUserObject(); + BasicDBObject dbObj = new BasicDBObject(); + dbCollection.insert(dbObj); + DefaultTreeModel model = (DefaultTreeModel)tree.getModel(); + MongoTreeNode objectNode = new MongoTreeNode(MongoTreeNode.Type.Object, dbObj); + collectionNode.add(objectNode); + model.nodeStructureChanged((MongoTreeNode)model.getRoot()); } }); } Modified: trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoTreeNode.java =================================================================== --- trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoTreeNode.java 2009-12-25 05:29:10 UTC (rev 28) +++ trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/dialogs/MongoTreeNode.java 2009-12-25 05:48:34 UTC (rev 29) @@ -20,6 +20,9 @@ import javax.swing.tree.DefaultMutableTreeNode; +import com.mebigfatguy.mongobrowser.MongoBundle; +import com.mongodb.DBCollection; + public class MongoTreeNode extends DefaultMutableTreeNode { private static final long serialVersionUID = -1710144820086785938L; @@ -27,12 +30,31 @@ Type nodeType; - public MongoTreeNode(Type type, String name) { - super(name); + public MongoTreeNode(Type type, Object dbObject) { + super(dbObject); nodeType = type; } public Type getType() { return nodeType; } + + @Override + public String toString() { + switch (nodeType) { + case Collection: + return ((DBCollection)getUserObject()).getName(); + + case Object: + return MongoBundle.getString(MongoBundle.Key.Object); + + case KeyValue: + return (String)getUserObject(); + + case Root: + case ExpansionSlug: + default: + return ""; + } + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |