Owner deletion added
[RRRRHHHH_Code] / ruralHouses / src / dataAccess / DB4oManager.java
index 4a1a964..e189e95 100644 (file)
@@ -85,8 +85,9 @@ public class DB4oManager {
                configuration.common().objectClass(Booking.class).cascadeOnDelete(true);
                configuration.common().objectClass(RuralHouse.class)
                                .cascadeOnDelete(true);
                configuration.common().objectClass(Booking.class).cascadeOnDelete(true);
                configuration.common().objectClass(RuralHouse.class)
                                .cascadeOnDelete(true);
-               configuration.common().objectClass(Offer.class)
+               configuration.common().objectClass(Account.class)
                .cascadeOnDelete(true);
                .cascadeOnDelete(true);
+               configuration.common().objectClass(Offer.class).cascadeOnDelete(true);
                configuration.common().objectClass(Account.class).cascadeOnUpdate(true);
                db = Db4oEmbedded.openFile(configuration, c.getDb4oFilename());
        }
                configuration.common().objectClass(Account.class).cascadeOnUpdate(true);
                db = Db4oEmbedded.openFile(configuration, c.getDb4oFilename());
        }
@@ -539,20 +540,16 @@ public class DB4oManager {
                return false;
        }
 
                return false;
        }
 
-       // TODO remove account
-
-       public boolean removeAccount(Account acc) {
+       public boolean removeAccount(Owner own) {
                if (c.isDatabaseLocal() == false)
                        openSDB();
                else
                        openDB();
 
                try {
                if (c.isDatabaseLocal() == false)
                        openSDB();
                else
                        openDB();
 
                try {
-                       ObjectSet<Account> result = db.queryByExample(new Account(acc
-                                       .getUsername()));
+                       ObjectSet<Account> result = db.queryByExample(new Account(own));
                        if (!result.isEmpty()) {
                                db.delete(result.get(0));
                        if (!result.isEmpty()) {
                                db.delete(result.get(0));
-                               ;
                                db.commit();
                                return true;
                        }
                                db.commit();
                                return true;
                        }
@@ -598,10 +595,10 @@ public class DB4oManager {
                        ObjectSet<Booking> result = db.queryByExample(b);
                        result.get(0).getOffer().getBookings().remove(b);
                        db.store(result.get(0).getOffer());
                        ObjectSet<Booking> result = db.queryByExample(b);
                        result.get(0).getOffer().getBookings().remove(b);
                        db.store(result.get(0).getOffer());
+                       db.delete(result.get(0));
                        db.commit();
                } catch (Exception e) {
                        e.printStackTrace();
                        db.commit();
                } catch (Exception e) {
                        e.printStackTrace();
-                       ;
                } finally {
                        db.close();
                }
                } finally {
                        db.close();
                }