View Javadoc

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  */