1 /**
2 *
3 */
4 package de.tivsource.page.dao.reservation;
5
6 import java.util.List;
7
8 import javax.ejb.Local;
9
10 import de.tivsource.page.entity.event.Event;
11 import de.tivsource.page.entity.reservation.Reservation;
12
13 /**
14 * @author Marc Michele
15 *
16 */
17 @Local
18 public interface ReservationDaoLocal {
19
20 /**
21 * Methode zum speichern eines Objektes der Klasse Reservation.
22 * @param reservation - Reservation Objekt das gespeichert werden soll
23 */
24 public void save(Reservation reservation);
25
26 /**
27 * Methode zum verändern eines Objektes der Klasse Reservation.
28 * @param reservation - Reservation Objekt das verändert werden soll
29 */
30 public void merge(Reservation reservation);
31
32 /**
33 * Methode zum löschen eines Objektes der Klasse Reservation.
34 * @param reservation - zu löschendes Reservation Objekt
35 */
36 public void delete(Reservation reservation);
37
38 public Reservation findByUuid(String uuid);
39
40 /**
41 * Methode zum laden einer Liste von Reservation Objekten, es muss dabei ein
42 * Startwert angegeben werden und die Anzhal der zu ladenen Reservation Objekte.
43 *
44 * @param start - Startwert ab der die Liste beginnen soll
45 * @param max - Maximale Anzahl an Objekten die die Liste enthalten soll
46 * @return List<Reservation> - Liste von Reservation Objekten
47 */
48 public List<Reservation> findAll(Integer start, Integer max);
49
50 public List<Reservation> findAll(Integer start, Integer max, String field, String order);
51
52 public List<Reservation> findAll(Event event, Integer start, Integer max);
53
54 public List<Reservation> findAll(Event event, Integer start, Integer max, String field, String order);
55
56 public List<Reservation> confirmationQueue(Integer start, Integer max);
57
58 public List<Reservation> confirmationQueue(Integer start, Integer max, String field, String order);
59
60 /**
61 * Methode die die Anzahl aller Reservation Objekte die sich in der Datenbank
62 * befinden zurück liefert.
63 *
64 * @return Integer - Anzahl der Reservation Objekte die sich in der Datenbank befinden.
65 */
66 public Integer countAll();
67
68 public Integer countAll(Event event);
69
70 public Integer countConfirmationQueue();
71
72 /**
73 *
74 * @param uuid - UUID des Event Objektes für die die Anzahl ermittelt werden soll.
75 * @return Integer - Anzahl der Personen die für dieses Event reserviert haben.
76 */
77 public Integer countQuantity(String uuid);
78
79 }// Ende interface