db = Db4o.openFile(Db4o.newConfiguration(), db4oFileName);
db.ext().configure().updateDepth(5);
+
} else if (mode.compareTo("initialize") == 0) {
try {
new File(db4oFileName).delete();
jon.setBankAccount("1349 5677 21 2133567777");
alfredo.addRuralHouse(3, "Casa del abuelo", "Pitillas", 5, 5,
5, 5, 5);
- alfredo.addRuralHouse(4, "Murgia", 6, 6, 6, 6, 6);
+ alfredo.addRuralHouse(4,"", "Murgia", 6, 6, 6, 6, 6);
alfredo.setBankAccount("4144 0087 23 9700002133");
Account jonAcc = new Account("userJon", "passJon", jon);
Account alfredoAcc = new Account("userAlfredo", "passAlfredo",
return db;
}
+
/**
* @param rh
*/
- public void storeRuralHouses(RuralHouse rh) {
+ public boolean storeRuralHouses(RuralHouse rh) {
DB4oManager.openDatabase("open");
+ boolean stored = false;
ObjectContainer db = DB4oManager.getContainer();
+ RuralHouse house = new RuralHouse(rh.getHouseNumber(), null, null,
+ null, null);
try {
- db.store(rh);
- db.commit();
+ ObjectSet<Owner> result = db.queryByExample(house);
+ if (result.isEmpty()) {
+ db.store(rh);
+ db.commit();
+ stored = true;
+ }
} finally {
db.close();
}
+ return stored;
}
/**
* This method finds all existing owners
*
*/
+
public Vector<Owner> getOwners() throws RemoteException, Exception {
DB4oManager.openDatabase("open");
ObjectContainer db = DB4oManager.getContainer();
} finally {
db.close();
}
+
}
/**
* @throws Exception
*/
public Vector<RuralHouse> getAllRuralHouses() throws RemoteException,
+
Exception {
DB4oManager.openDatabase("open");
ObjectContainer db = DB4oManager.getContainer();
try {
- RuralHouse proto = new RuralHouse(0, null, null, null, 0, 0, 0, 0,
- 0);
+ RuralHouse proto = new RuralHouse(0, null, null, null, null);
ObjectSet<RuralHouse> result = db.queryByExample(proto);
Vector<RuralHouse> ruralHouses = new Vector<RuralHouse>();
while (result.hasNext())
* number, start day, last day and price
* @return None
*/
+
public Offer createOffer(RuralHouse ruralHouse, Date firstDay,
Date lastDay, float price) throws RemoteException, Exception {
DB4oManager.openDatabase("open");
Offer o;
try {
RuralHouse proto = new RuralHouse(ruralHouse.getHouseNumber(),
- null, ruralHouse.getDescription(), ruralHouse.getTown(), 0,
- 0, 0, 0, 0);
+ null, ruralHouse.getDescription(), ruralHouse.getTown(),
+ ruralHouse.getFeatures());
ObjectSet<RuralHouse> result = db.queryByExample(proto);
RuralHouse rh = (RuralHouse) result.next();
o = rh.createOffer(firstDay, lastDay, price);
return o;
}
+
/**
* @param rh
* @return
try {
ObjectContainer db = DB4oManager.getContainer();
RuralHouse proto = new RuralHouse(rh.getHouseNumber(), null,
- rh.getDescription(), rh.getTown(), 0, 0, 0, 0, 0);
+
+ rh.getDescription(), rh.getTown(), rh.getFeatures());
ObjectSet<RuralHouse> result = db.queryByExample(proto);
return rh = (RuralHouse) result.next();
} catch (Exception exc) {
} finally {
db.close();
}
- }
+
+ }
/**
* @param offer
} finally {
db.close();
}
+
+ }
+
+ public void removeHouse(int houseNumber) {
+ ObjectContainer db = DB4oManager.getContainer();
+ RuralHouse house = new RuralHouse(houseNumber, null, null, null, null);
+ try {
+ ObjectSet<RuralHouse> result = db.queryByExample(house);
+ if (!result.isEmpty()) {
+ RuralHouse found = (RuralHouse) result.get(0);
+ db.delete(found);
+ db.commit();
+ }
+ } catch (Exception exc) {
+ exc.printStackTrace();
+ } finally {
+ db.close();
+ }
+
}
/**