[Mongobrowser-commit] SF.net SVN: mongobrowser:[80] trunk/mongobrowser/src/com/mebigfatguy/ mongob
Status: Pre-Alpha
Brought to you by:
dbrosius
From: <dbr...@us...> - 2010-01-02 23:58:49
|
Revision: 80 http://mongobrowser.svn.sourceforge.net/mongobrowser/?rev=80&view=rev Author: dbrosius Date: 2010-01-02 23:58:32 +0000 (Sat, 02 Jan 2010) Log Message: ----------- save object in collection on update Modified Paths: -------------- trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/actions/NewKeyValueAction.java Modified: trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/actions/NewKeyValueAction.java =================================================================== --- trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/actions/NewKeyValueAction.java 2010-01-02 23:56:09 UTC (rev 79) +++ trunk/mongobrowser/src/com/mebigfatguy/mongobrowser/actions/NewKeyValueAction.java 2010-01-02 23:58:32 UTC (rev 80) @@ -29,6 +29,7 @@ import com.mebigfatguy.mongobrowser.MongoContext; import com.mebigfatguy.mongobrowser.dialogs.KeyValueDialog; import com.mebigfatguy.mongobrowser.dialogs.MongoTreeNode; +import com.mongodb.DBCollection; import com.mongodb.DBObject; public class NewKeyValueAction extends AbstractAction { @@ -57,6 +58,9 @@ object.put(key, value); MongoTreeNode kv = new MongoTreeNode(MongoTreeNode.Type.KeyValue, key + " : " + object.get(key)); objectNode.add(kv); + MongoTreeNode collectionNode = findCollectionNode(objectNode); + DBCollection collection = (DBCollection)collectionNode.getUserObject(); + collection.save(object); DefaultTreeModel model = (DefaultTreeModel)tree.getModel(); model.nodeStructureChanged((MongoTreeNode)model.getRoot()); TreePath selection = new TreePath(kv.getPath()); @@ -64,5 +68,13 @@ tree.setSelectionPath(selection); } } + + private MongoTreeNode findCollectionNode(MongoTreeNode fromNode) { + while (fromNode.getType() != MongoTreeNode.Type.Collection) { + fromNode = (MongoTreeNode)fromNode.getParent(); + } + + return fromNode; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |