Git Repository Public Repository

RRRRHHHH_Code

URLs

Copy to Clipboard

Diff Revisions c92b61 ... vs 4bc36b ... for ruralHouses/src/dataAccess/DB4oManager.java

Diff revisions: vs.
  @@ -81,10 +81,13 @@
81 81 configuration = Db4oEmbedded.newConfiguration();
82 82 configuration.common().activationDepth(c.getActivationDepth());
83 83 configuration.common().updateDepth(c.getUpdateDepth());
84 - configuration.common().objectClass(Owner.class).cascadeOnUpdate(true);
85 84 configuration.common().objectClass(Owner.class).cascadeOnDelete(true);
85 + configuration.common().objectClass(Booking.class).cascadeOnDelete(true);
86 86 configuration.common().objectClass(RuralHouse.class)
87 - .cascadeOnUpdate(true);
87 + .cascadeOnDelete(true);
88 + configuration.common().objectClass(Account.class)
89 + .cascadeOnDelete(true);
90 + configuration.common().objectClass(Offer.class).cascadeOnDelete(true);
88 91 configuration.common().objectClass(Account.class).cascadeOnUpdate(true);
89 92 db = Db4oEmbedded.openFile(configuration, c.getDb4oFilename());
90 93 }
  @@ -207,7 +210,7 @@
207 210 try {
208 211 ObjectSet<Offer> of = db.queryByExample(offer);
209 212 RuralHouse rh = of.get(0).getRuralHouse();
210 - System.out.println(rh.offers.remove(of.get(0)));
213 + System.out.println(rh.getAllOffers().remove(of.get(0)));
211 214 db.store(rh);
212 215 db.commit();
213 216
  @@ -552,20 +555,16 @@
552 555 return false;
553 556 }
554 557
555 - // TODO remove account
556 -
557 - public boolean removeAccount(Account acc) {
558 + public boolean removeAccount(Owner own) {
558 559 if (c.isDatabaseLocal() == false)
559 560 openSDB();
560 561 else
561 562 openDB();
562 563
563 564 try {
564 - ObjectSet<Account> result = db.queryByExample(new Account(acc
565 - .getUsername()));
565 + ObjectSet<Account> result = db.queryByExample(new Account(own));
566 566 if (!result.isEmpty()) {
567 567 db.delete(result.get(0));
568 - ;
569 568 db.commit();
570 569 return true;
571 570 }
  @@ -577,10 +576,10 @@
577 576 return false;
578 577 }
579 578
580 - // TODO this method should be improved.
581 579 public void acceptBooking(Offer of) {
582 - Offer off = new Offer(of.getOfferNumber(), of.getRuralHouse(),
583 - of.getFirstDay(), of.getLastDay(), of.getPrice());
580 + Offer off = new Offer(of.getOfferNumber(), new RuralHouse(of
581 + .getRuralHouse().getHouseName(), null, null, null, null), null,
582 + null, 0);
584 583 if (c.isDatabaseLocal() == false)
585 584 openSDB();
586 585 else
  @@ -588,8 +587,12 @@
588 587
589 588 try {
590 589 ObjectSet<Offer> result = db.queryByExample(off);
591 - this.deleteOffer(result.get(0));
592 - db.store(of);
590 + db.delete(result.get(0));
591 + RuralHouse rh = result.get(0).getRuralHouse();
592 + of.setRuralHouse(rh);
593 + rh.getAllOffers().remove(result.get(0));
594 + rh.getAllOffers().add(of);
595 + db.store(rh);
593 596 db.close();
594 597
595 598 } catch (Exception e) {
  @@ -605,13 +608,12 @@
605 608 openDB();
606 609 try {
607 610 ObjectSet<Booking> result = db.queryByExample(b);
608 - ObjectSet<Client> result2 = db.queryByExample(b.getClient());
611 + result.get(0).getOffer().getBookings().remove(b);
612 + db.store(result.get(0).getOffer());
609 613 db.delete(result.get(0));
610 - db.delete(result2.get(0));
611 614 db.commit();
612 615 } catch (Exception e) {
613 616 e.printStackTrace();
614 - ;
615 617 } finally {
616 618 db.close();
617 619 }