package businessLogic;
import java.util.Date;
+import java.util.Vector;
import com.db4o.ObjectContainer;
import com.db4o.ObjectSet;
import dataAccess.DB4oManager;
import domain.Booking;
+import domain.Offer;
+import domain.Owner;
import domain.RuralHouse;
import exceptions.OfferCanNotBeBooked;
-
public final class BookingManager {
private int bookingNumber = 0;
e.printStackTrace();
}
}
-
+
/**
- * This method returns the next Booking number
+ * This method returns the next Booking number
*
* @return the book number
*/
- public static int getNumber(){
- ObjectContainer db=DB4oManager.getContainer();
- BookingManager b=getInstance();
- b.bookingNumber++;
- db.store(b);
- db.commit();
- return b.bookingNumber;
- }
-
+ public static int getNumber() {
+ ObjectContainer db = DB4oManager.getContainer();
+ BookingManager b = getInstance();
+ b.bookingNumber++;
+ db.store(b);
+ db.commit();
+ return b.bookingNumber;
+ }
+
/**
- * This method returns the instance of the BookingManager class
+ * This method returns the instance of the BookingManager class
*
* @return the booking manager
*/
- public static BookingManager getInstance() {
- ObjectContainer db=DB4oManager.getContainer();
- BookingManager b = new BookingManager();
- ObjectSet<BookingManager> result = db.queryByExample(b);
- if (!result.hasNext()){
- theBookingManager = new BookingManager();
- db.store(theBookingManager);
- db.commit();
- } else theBookingManager=(BookingManager)result.next();
+ public static BookingManager getInstance() {
+ ObjectContainer db = DB4oManager.getContainer();
+ BookingManager b = new BookingManager();
+ ObjectSet<BookingManager> result = db.queryByExample(b);
+ if (!result.hasNext()) {
+ theBookingManager = new BookingManager();
+ db.store(theBookingManager);
+ db.commit();
+ } else
+ theBookingManager = (BookingManager) result.next();
return theBookingManager;
}
-
+
+ public void removeBooking(Booking B) {
+ // TODO
+
+ }
+
+ public Vector<Booking> getAllBookings(Owner ow) {
+ Vector<Booking> books = new Vector<Booking>();
+ for (RuralHouse rh : ow.getRuralHouses()) {
+ Vector<Offer> off = rh.getAllOffers();
+ for (Offer of : off) {
+ System.out.print(of.toString());
+ if (of.getBooking() != null) {
+
+ books.add(of.getBooking());
+ }
+ }
+ }
+ return books;
+ }
+
/**
* This method creates a book with a corresponding parameters
*
* day, last day, house number and telephone
* @return a book
*/
- public Booking createBooking(RuralHouse ruralHouse, Date firstDate, Date lastDate, String bookTelephoneNumber)
+ public Booking createBooking(RuralHouse ruralHouse, Date firstDate,
+ Date lastDate, String bookTelephoneNumber)
throws OfferCanNotBeBooked {
- return dbMngr.createBooking(ruralHouse,firstDate,lastDate,bookTelephoneNumber);
+ return dbMngr.createBooking(ruralHouse, firstDate, lastDate,
+ bookTelephoneNumber);
}
-
+
}
\ No newline at end of file