Separate DB almost fixed
[RRRRHHHH_Code] / ruralHouses / src / dataAccess / DB4oManager.java
index 4553f48..a424473 100644 (file)
@@ -103,6 +103,23 @@ public class DB4oManager {
                configurationCS.common().activationDepth(c.getActivationDepth());
                configurationCS.common().updateDepth(c.getUpdateDepth());
                configurationCS.common().objectClass(Owner.class).cascadeOnDelete(true);
+               configurationCS.common().objectClass(Booking.class)
+                               .cascadeOnDelete(true);
+               configurationCS.common().objectClass(RuralHouse.class)
+                               .cascadeOnDelete(true);
+               configurationCS.common().objectClass(Account.class)
+                               .cascadeOnDelete(true);
+               configurationCS.common().objectClass(Offer.class).cascadeOnDelete(true);
+               configurationCS.common().objectClass(Owner.class).cascadeOnUpdate(true);
+               configurationCS.common().objectClass(Booking.class)
+                               .cascadeOnUpdate(true);
+               configurationCS.common().objectClass(RuralHouse.class)
+                               .cascadeOnUpdate(true);
+               configurationCS.common().objectClass(Account.class)
+                               .cascadeOnUpdate(true);
+               configurationCS.common().objectClass(Offer.class).cascadeOnUpdate(true);
+               configurationCS.common().objectClass(Account.class)
+                               .cascadeOnUpdate(true);
                db = Db4oClientServer.openClient(configurationCS, c.getDatabaseNode(),
                                c.getDatabasePort(), c.getUser(), c.getPassword());
 
@@ -333,7 +350,8 @@ public class DB4oManager {
                        RuralHouse rh = (RuralHouse) result.next();
 
                        Offer offer;
-                       offer = (Offer)db.queryByExample(new Offer(0, rh, firstDate, lastDate, 0)).get(0);
+                       offer = (Offer) db.queryByExample(
+                                       new Offer(0, rh, firstDate, lastDate, 0)).get(0);
 
                        if (offer != null) {
                                offer.createBooking(theDB4oManagerAux.bookingNumber++, cl);
@@ -380,8 +398,6 @@ public class DB4oManager {
                }
        }
 
-
-
        public boolean existsOverlappingOffer(RuralHouse rh, Date firstDay,
                        Date lastDay) throws RemoteException, OverlappingOfferExists {
 
@@ -500,7 +516,14 @@ public class DB4oManager {
        public Vector<RuralHouse> getRuralHouses(Owner ow, String name,
                        String town, int nBed, int nKit, int nBath, int nPark, int nLiv) {
                HouseFeatures fea = new HouseFeatures(nBed, nKit, nBath, nLiv, nPark);
-               RuralHouse rh = new RuralHouse(name, ow, null, town, fea);
+               RuralHouse rh;
+               if (ow != null) {
+                       Owner own = new Owner(ow.getName(), ow.getBankAccount(),
+                                       ow.getMailAccount());
+                       rh = new RuralHouse(name, own, null, town, fea);
+               }else{
+                       rh = new RuralHouse(name, ow, null, town, fea);
+               }
                if (c.isDatabaseLocal() == false)
                        openSDB();
                else
@@ -548,7 +571,7 @@ public class DB4oManager {
                        openDB();
 
                try {
-                       ObjectSet<Account> result = db.queryByExample(new Account(null,null,own));
+                       ObjectSet<Account> result = db.queryByExample(new Account(own));
                        if (!result.isEmpty()) {
                                db.delete(result.get(0));
                                db.commit();
@@ -613,10 +636,12 @@ public class DB4oManager {
                        openSDB();
                else
                        openDB();
-       
+
                try {
                        Offer of = (Offer) db.queryByExample(
-                                       new Offer(0, o.getRuralHouse(), null, null, 0)).get(0);
+                                       new Offer(o.getOfferNumber(), new RuralHouse(o
+                                                       .getRuralHouse().getHouseName(), null, null, null,
+                                                       null), null, null, 0)).get(0);
                        Booking proto = new Booking(0, of, null, null);
                        ObjectSet<Booking> result = db.queryByExample(proto);
                        return new Vector<Booking>(result);