KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > javacoding > jspider > core > storage > impl > SiteDAOImpl


1 package net.javacoding.jspider.core.storage.impl;
2
3 import net.javacoding.jspider.core.storage.SiteDAO;
4 import net.javacoding.jspider.core.storage.spi.SiteDAOSPI;
5 import net.javacoding.jspider.core.storage.spi.StorageSPI;
6 import net.javacoding.jspider.core.logging.Log;
7 import net.javacoding.jspider.core.model.SiteInternal;
8 import net.javacoding.jspider.api.model.Site;
9
10 import java.net.URL JavaDoc;
11
12 /**
13  * $Id: SiteDAOImpl.java,v 1.1 2003/04/11 16:37:05 vanrogu Exp $
14  */

15 class SiteDAOImpl implements SiteDAO {
16
17     protected Log log;
18     protected StorageSPI storage;
19     protected SiteDAOSPI spi;
20
21     protected int counter;
22
23     public SiteDAOImpl ( Log log, StorageSPI storage, SiteDAOSPI spi ) {
24         this.log = log;
25         this.storage = storage;
26         this.spi = spi;
27         this.counter = 0;
28     }
29
30     public Site createSite(URL JavaDoc siteURL) {
31         int id = ++counter;
32         SiteInternal si = new SiteInternal (id, storage, siteURL);
33         spi.create(id, si);
34         return si;
35     }
36
37     public Site find(URL JavaDoc siteURL) {
38         return spi.find(siteURL);
39     }
40
41     public void save(Site site) {
42         SiteInternal si = TypeTranslator.translate(site);
43         spi.save(si.getId(), si);
44     }
45
46     public Site[] findAll() {
47         return spi.findAll();
48     }
49 }
50
Popular Tags