1 /***
2 Copyright (C) 2005 The Java Community
3
4 This program is free software; you can redistribute it and/or modify it under
5 the terms of the GNU General Public License as published by the Free Software
6 Foundation; either version 2 of the License, or (at your option) any later
7 version.
8
9 This program is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12
13 You should have received a copy of the GNU General Public License along with
14 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
15 Place, Suite 330, Boston, MA 02111-1307 USA.
16
17 */
18 package org.bejug.javacareers.jobs.service;
19
20 import java.util.List;
21
22 import org.bejug.javacareers.common.search.SearchCriteria;
23 import org.bejug.javacareers.jobs.model.AcademicEducationOffer;
24 import org.bejug.javacareers.jobs.model.CommercialEducationOffer;
25 import org.bejug.javacareers.jobs.model.EducationOffer;
26
27 /***
28 * Defines the "Business Facade" of the controller.
29 *
30 * @author Bart Meyers (Last modified by $Author: ge0ffrey $)
31 * @version $Revision: 1.1 $ $Date: 2005/08/26 07:58:27 $
32 */
33 public interface EducationService {
34
35 /***
36 * Adds an educationOffer.
37 * @param offer the educationOffer to add.
38 */
39 void storeEducationOffer(EducationOffer offer);
40
41 /***
42 * delete an educationOffer.
43 * @param offer the educationOffer to delete.
44 */
45 void deleteEducationOffer(EducationOffer offer);
46
47 /***
48 * get a list of academiceducationoffers.
49 * @return a list containing all the academiceducationoffers.
50 */
51 List getAcademicEducationOffers();
52
53 /***
54 * get a list of commercialeducationoffers.
55 * @return a list containing all the commercialeducationoffers.
56 */
57 List getCommercialEducationOffers();
58
59 /***
60 * gets an academiceducationoffer by id.
61 * @param id the id of the academiceducationoffer.
62 * @return the wanted academiceducationoffer.
63 */
64 AcademicEducationOffer getAcademicEducationOffer(Integer id);
65
66 /***
67 * gets a commercialeducationoffer by id.
68 * @param id the id of the commercialeducationoffer.
69 * @return the wanted commericaleducationoffer.
70 */
71 CommercialEducationOffer getCommercialEducationOffer(Integer id);
72
73 /***
74 * gets a EducationOffer by searchCriteria.
75 * @param searchCriteria the searchCriteria
76 * @return the wanted EducationOffer
77 * @throws IllegalArgumentException if an error
78 */
79 List getCommercialEducationOffers(SearchCriteria searchCriteria) throws IllegalArgumentException;
80
81 /***
82 * gets a EducationOffer by searchCriteria.
83 * @param searchCriteria the searchCriteria
84 * @return the wanted EducationOffer
85 * @throws IllegalArgumentException if an error
86 */
87 List getAcademicEducationOffers(SearchCriteria searchCriteria) throws IllegalArgumentException;
88
89
90 /***
91 * @return an int indicating the number of commercial educations
92 * in the system.
93 */
94 int getCommercialEducationsCount();
95
96 /***
97 * @return an int indicating the number of academic educations
98 * in the system.
99 */
100 int getAcademicEducationsCount();
101
102 /***
103 * @return the total number of educatios available
104 */
105 int getEducationsCount();
106 }
107 /***
108 * $Log: EducationService.java,v $
109 * Revision 1.1 2005/08/26 07:58:27 ge0ffrey
110 * split up the sources in service, serviceimpl and webclient
111 *
112 * Revision 1.6 2005/08/17 09:07:59 schauwvliege
113 * added education en service offer services
114 *
115 * Revision 1.5 2005/08/10 09:04:49 bavo_jcs
116 * Optimized imports according to checkstyle
117 *
118 * Revision 1.4 2005/08/09 12:59:56 bavo_jcs
119 * Optimized imports
120 *
121 * Revision 1.3 2005/06/14 13:40:04 schauwvliege
122 * Renamed add to store
123 *
124 * Revision 1.2 2005/06/09 08:18:52 bejug_cc
125 * Fix initial import
126 *
127 * Revision 1.4 2005/05/31 07:10:32 bme
128 * added count-methods
129 *
130 * Revision 1.3 2005/05/12 08:23:55 ssc
131 * Checkstyle errors
132 *
133 * Revision 1.2 2005/05/11 16:32:59 sja
134 * Added CVS last modified tag.
135 *
136 * Revision 1.1 2005/05/04 09:49:51 bme
137 * First Release
138 *
139 */