KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > nava > informa > utils > RSS200Settings


1 //
2
//Informa -- RSS Library for Java
3
//Copyright (c) 2002 by Niko Schmuck
4
//
5
//Niko Schmuck
6
//http://sourceforge.net/projects/informa
7
//mailto:niko_schmuck@users.sourceforge.net
8
//
9
//This library is free software.
10
//
11
//You may redistribute it and/or modify it under the terms of the GNU
12
//Lesser General Public License as published by the Free Software Foundation.
13
//
14
//Version 2.1 of the license should be included with this distribution in
15
//the file LICENSE. If the license is not included with this distribution,
16
//you may find a copy at the FSF web site at 'www.gnu.org' or 'www.fsf.org',
17
//or you may write to the Free Software Foundation, 675 Mass Ave, Cambridge,
18
//MA 02139 USA.
19
//
20
//This library is distributed in the hope that it will be useful,
21
//but WITHOUT ANY WARRANTY; without even the implied waranty of
22
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23
//Lesser General Public License for more details.
24
//
25
package de.nava.informa.utils;
26
27 import org.apache.commons.logging.Log;
28 import org.apache.commons.logging.LogFactory;
29
30 import de.nava.informa.core.ChannelIF;
31
32 /**
33  * @author Jean-Guy Avelin
34  *
35  */

36 public class RSS200Settings implements CacheSettingsIF {
37
38   private static Log logger = LogFactory.getLog(RSS200Settings.class);
39
40   private long defaultTtl = DEFAULT_TTL;
41
42   /**
43    *
44    */

45   public void setDefaultTtl(long defaultTtl) {
46     this.defaultTtl = defaultTtl;
47   }
48
49   /**
50    * return in order of preference: feed producer ttl (if exists and < wantedTtl)
51    * wantedTtl (if exists) defaultTtl (if exists)
52    */

53   public long getTtl(ChannelIF channel, long Ttlms) {
54     if (channel.getTtl() > 0) {
55       long channelTtl = channel.getTtl() * (60 * 1000); // ttl in feed in minutes
56
if (Ttlms > channelTtl) {
57         return Ttlms;
58       }
59       return channelTtl;
60     }
61     
62     if (Ttlms > MINIMAL_TTL )
63       return Ttlms;
64     
65     return defaultTtl;
66
67   }
68 }
Popular Tags