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 * @author Bavo Bruylandt (Last modified by $Author: schauwvliege $)
19 * @version $Revision: 1.2 $ - $Date: 2005/09/13 08:11:17 $
20 */
21 package org.bejug.javacareers.jobs.service;
22
23 import java.util.List;
24
25 import org.bejug.javacareers.feeder.AggregatorFeederTask;
26 import org.bejug.javacareers.feeder.RssGeneratorFeederTask;
27 import org.bejug.javacareers.feeder.dao.RssFeedDao;
28 import org.bejug.javacareers.feeder.model.RssFeed;
29
30 /***
31 * @author Bavo Bruylands (last mnodified by $Author: schauwvliege $)
32 * @version $Revision: 1.2 $ - $Date: 2005/09/13 08:11:17 $
33 */
34 public class RssFeedServiceImpl implements RssFeedService {
35
36 /***
37 * RssFeed DAO for persistence.
38 */
39 private RssFeedDao rssFeedDao;
40
41 /***
42 * AggregatorTask
43 */
44 private AggregatorFeederTask aggregatorFeederTask;
45
46 /***
47 * GeneratorTask
48 */
49 private RssGeneratorFeederTask generatorFeederTask;
50
51 /***
52 * Add a RSS feed.
53 *
54 * @param feed The feed to add
55 */
56 public void addRssFeed(RssFeed feed) {
57 getRssFeedDao().storeRssFeed(feed);
58
59 }
60
61 /***
62 * Convenience method to delete RSS feed by matching all properties.
63 *
64 * @param feed The feed to delete
65 */
66 public void deleteRssFeed(RssFeed feed) {
67 getRssFeedDao().deleteRssFeed(feed);
68 }
69
70 /***
71 * Convenience method to delete RSS feed by matching all properties.
72 *
73 * @param id The feed to delete
74 */
75 public void deleteRssFeed(Integer id) {
76 getRssFeedDao().deleteRssFeed(id);
77 }
78
79 /***
80 * Delete RSS feeds by URL.
81 *
82 * @param url String.
83 */
84 public void deleteRssFeedByUrl(String url) {
85 getRssFeedDao().deleteRssFeedByUrl(url);
86 }
87
88 /***
89 * Return all RSS feeds.
90 *
91 * @return List
92 */
93 public List getRssFeeds() {
94 return getRssFeedDao().getRssFeeds();
95 }
96
97 /***
98 * gets a RssFeed by id.
99 *
100 * @param id the id of the RssFeed
101 * @return the wanted RssFeed
102 */
103 public RssFeed getRssFeed(Integer id) {
104 return getRssFeedDao().getRssFeed(id);
105 }
106
107 /***
108 * @see org.bejug.javacareers.jobs.service.RssFeedService#aggregateFeeds()
109 */
110 public void aggregateFeeds() {
111 getAggregatorFeederTask().run();
112
113 }
114
115 /***
116 * @see org.bejug.javacareers.jobs.service.RssFeedService#generateFeeds()
117 */
118 public void generateFeeds() {
119 getGeneratorFeederTask().run();
120
121 }
122
123 /***
124 * Spring injection method.
125 * @return The rssFeed DAO
126 */
127 public RssFeedDao getRssFeedDao() {
128 return rssFeedDao;
129 }
130
131 /***
132 * Spring injection method.
133 * @param rssFeedDao The rssFeed DAO to use
134 */
135 public void setRssFeedDao(RssFeedDao rssFeedDao) {
136 this.rssFeedDao = rssFeedDao;
137 }
138
139 /***
140 * @return AggregatorFeederTask
141 */
142 public AggregatorFeederTask getAggregatorFeederTask() {
143 return aggregatorFeederTask;
144 }
145
146 /***
147 * @param aggregatorFeederTask AggregatorFeederTask
148 */
149 public void setAggregatorFeederTask(AggregatorFeederTask aggregatorFeederTask) {
150 this.aggregatorFeederTask = aggregatorFeederTask;
151 }
152
153 /***
154 * @return RssGeneratorFeederTask
155 */
156 public RssGeneratorFeederTask getGeneratorFeederTask() {
157 return generatorFeederTask;
158 }
159
160 /***
161 * @param rssGeneratorFeederTask RssGeneratorFeederTask
162 */
163 public void setGeneratorFeederTask(RssGeneratorFeederTask rssGeneratorFeederTask) {
164 this.generatorFeederTask = rssGeneratorFeederTask;
165 }
166 }
167 /***
168 * $Log: RssFeedServiceImpl.java,v $
169 * Revision 1.2 2005/09/13 08:11:17 schauwvliege
170 * organize imports
171 *
172 * Revision 1.1 2005/08/26 07:58:31 ge0ffrey
173 * split up the sources in service, serviceimpl and webclient
174 *
175 * Revision 1.8 2005/08/10 09:04:49 bavo_jcs
176 * Optimized imports according to checkstyle
177 *
178 * Revision 1.7 2005/08/09 12:59:56 bavo_jcs
179 * Optimized imports
180 *
181 * Revision 1.6 2005/06/17 13:09:38 schauwvliege
182 * Renamed add to store
183 *
184 * Revision 1.5 2005/06/17 12:01:17 schauwvliege
185 * CheckStyle/ PMD
186 *
187 * Revision 1.4 2005/06/15 15:41:54 bavo_jcs
188 * made aggregation and generation a service
189 *
190 * Revision 1.3 2005/06/14 12:05:52 schauwvliege
191 * CheckStyle and fixing tests
192 *
193 * Revision 1.2 2005/06/09 08:18:52 bejug_cc
194 * Fix initial import
195 *
196 * Revision 1.4 2005/06/05 11:00:23 sja
197 * Added class doc.
198 *
199 * Revision 1.3 2005/06/01 15:07:11 bbr
200 * RssFeed page
201 *
202 * Revision 1.2 2005/06/01 13:09:04 bbr
203 * RssFeedService
204 *
205 * Revision 1.1 2005/06/01 12:36:54 bbr
206 * RssFeedService
207 *
208 */