KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > archive > crawler > util > MemUriUniqFilter


1 /* Copyright (C) 2003 Internet Archive.
2  *
3  * This file is part of the Heritrix web crawler (crawler.archive.org).
4  *
5  * Heritrix is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU Lesser Public License as published by
7  * the Free Software Foundation; either version 2.1 of the License, or
8  * any later version.
9  *
10  * Heritrix is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU Lesser Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser Public License
16  * along with Heritrix; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * MemUURISet.java
20  * Created on Sep 15, 2003
21  *
22  * $Header: /cvsroot/archive-crawler/ArchiveOpenCrawler/src/java/org/archive/crawler/util/MemUriUniqFilter.java,v 1.7.14.1 2007/01/13 01:31:30 stack-sf Exp $
23  */

24 package org.archive.crawler.util;
25
26 import java.util.HashSet JavaDoc;
27
28 /**
29  * A purely in-memory UriUniqFilter based on a HashSet, which remembers
30  * every full URI string it sees.
31  *
32  * @author gojomo
33  *
34  */

35 public class MemUriUniqFilter
36 extends SetBasedUriUniqFilter {
37     HashSet JavaDoc<CharSequence JavaDoc> hashSet;
38     
39     protected synchronized boolean setAdd(CharSequence JavaDoc uri) {
40         return hashSet.add(uri);
41     }
42     protected synchronized boolean setRemove(CharSequence JavaDoc uri) {
43         return hashSet.remove(uri);
44     }
45     protected synchronized long setCount() {
46         return (long)hashSet.size();
47     }
48     
49     /* (non-Javadoc)
50      * @see org.archive.crawler.util.UriUniqFilterImpl#createUriSet()
51      */

52     protected void createUriSet() {
53         hashSet = new HashSet JavaDoc<CharSequence JavaDoc>();
54     }
55
56 }
57
Popular Tags