diff options
Diffstat (limited to 'collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java')
-rw-r--r-- | collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java b/collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java index 20e426a1c4..2e6cbc92e6 100644 --- a/collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java +++ b/collaboration/GSoC-2011-Eranda/couchdb/src/main/java/org/apache/tuscany/nosqldatastore/couchdb/CouchDBDatatabase.java @@ -21,23 +21,25 @@ package org.apache.tuscany.nosqldatastore.couchdb; import org.apache.tuscany.nosqldatastore.Database; import org.apache.tuscany.nosqldatastore.Group; +import org.apache.tuscany.nosqldatastore.exception.GroupNotFoundException; import org.jcouchdb.db.Server; import org.jcouchdb.document.DesignDocument; +import org.jcouchdb.exception.CouchDBException; public class CouchDBDatatabase implements Database{ private org.jcouchdb.db.Database db; private String dbname; - CouchDBDatatabase(String dbname){ + CouchDBDatatabase(String dbname) throws CouchDBException{ this.dbname = dbname; db = new org.jcouchdb.db.Database("localhost",dbname); Server server = db.getServer(); if(!server.listDatabases().contains(dbname)){ server.createDatabase(dbname); - System.out.println("New database created..."); + return; } - + System.out.println("Connect to the existing database..."); } public Group createGroup(String groupId) { @@ -50,8 +52,12 @@ public class CouchDBDatatabase implements Database{ return group; } - public void deleteGroup(String groupId) { + public void deleteGroup(String groupId) throws GroupNotFoundException{ DesignDocument doc = db.getDesignDocument(groupId); - db.delete(doc); + if(doc != null){ + db.delete(doc); + return; + } + throw new GroupNotFoundException("Group does not exists "+groupId); } } |