1 /**
2 *
3 */
4 package de.tivsource.page.dao.appointment;
5
6 import java.util.List;
7
8 import javax.ejb.Local;
9
10 import de.tivsource.page.entity.appointment.Appointment;
11
12 /**
13 * @author Marc Michele
14 *
15 */
16 @Local
17 public interface AppointmentDaoLocal {
18
19 /**
20 * Methode zum speichern eines Objektes der Klasse Appointment.
21 * @param appointment - Appointment Objekt das gespeichert werden soll
22 */
23 public void save(Appointment appointment);
24
25 /**
26 * Methode zum verändern eines Objektes der Klasse Appointment.
27 * @param appointment - Appointment Objekt das verändert werden soll
28 */
29 public void merge(Appointment appointment);
30
31 /**
32 * Methode zum löschen eines Objektes der Klasse Appointment.
33 * @param appointment - zu löschendes Appointment Objekt
34 */
35 public void delete(Appointment appointment);
36
37 /**
38 * Metholde um zu überprüfen ob die angegebene UUIDe zu einem Termin (Appointment) gehört.
39 *
40 * @param uuid - Die UUID die überprüft werden soll.
41 * @return Boolean - true wenn es ein Termin (Appointment) ist.
42 */
43 public Boolean isAppointmentUuid(String uuid);
44
45 /**
46 * Methode zum laden eines Objektes der Klasse Appointment anhand der
47 * Uuid.
48 *
49 * @param uuid - UUID des Objektes das geladen werden soll.
50 * @return Appointment - Objekt das die angegebene UUID besitzt.
51 */
52 public Appointment findByUuid(String uuid);
53
54 /**
55 * Methode zum laden einer Liste von Appointment Objekten, es muss dabei ein
56 * Startwert angegeben werden und die Anzahl der zu ladenen Appointment Objekte.
57 *
58 * @param start - Startwert ab der die Liste beginnen soll
59 * @param max - Maximale Anzahl an Objekten die die Liste enthalten soll
60 * @return List<Appointment> - Liste von Appointment Objekten
61 */
62 public List<Appointment> findAll(Integer start, Integer max);
63
64 /**
65 * Methode zu laden einer Liste von Appointment Objekten, es muss dabei ein
66 * Startwert, die Anzahl der zu ladenen Objekte, das Feld nach dem sortiert
67 * werden soll und die sortier Richtung angegeben werden.
68 *
69 * @param start
70 * @param max
71 * @param field
72 * @param order
73 * @return
74 */
75 public List<Appointment> findAll(Integer start, Integer max, String field, String order);
76
77 /**
78 * Methode zu laden der aktuell sichtbaren Apointment Objekte, dabei werden
79 * nur Objekte geladen die nicht vor dem aktuellen Datum liegen. Das heißt
80 * Objekte die in der Vergangenheit liegen werden nicht angezeigt.
81 *
82 * @param start
83 * @param max
84 * @return
85 */
86 public List<Appointment> findAllVisible(Integer start, Integer max);
87
88 /**
89 * Methode zu laden der archivierten sichtbaren Apointment Objekte, dabei
90 * werden nur Objekte geladen die nicht nach dem aktuellen Datum liegen. Das
91 * heißt es werden nur Objekte die in der Vergangenheit liegen angezeigt.
92 *
93 * @param start
94 * @param max
95 * @return
96 */
97 public List<Appointment> findAllArchiveVisible(Integer start, Integer max);
98
99 /**
100 * Methode die die Anzahl aller Appointment Objekte die sich in der Datenbank
101 * befinden zurück liefert.
102 *
103 * @return Integer - Anzahl der Appointment Objekte die sich in der Datenbank befinden.
104 */
105 public Integer countAll();
106
107 public Integer countAllVisible();
108
109 public Integer countAllArchiveVisible();
110
111 }// Ende interface