1 32 33 package websphinx; 34 35 46 public class DownloadParameters implements Cloneable 47 , java.io.Serializable 49 { 51 private int maxThreads = 4; 52 private int maxPageSize = 100; 54 private int downloadTimeout = 60; 56 private int crawlTimeout = -1; 58 private boolean obeyRobotExclusion = false; 60 62 68 private boolean interactive = true; 69 private boolean useCaches = true; 71 private String acceptedMIMETypes = null; 73 private String userAgent = null; 75 77 78 public static final DownloadParameters DEFAULT = new DownloadParameters (); 79 public static final DownloadParameters NO_LIMITS = 80 DEFAULT 81 .changeMaxPageSize (-1) 82 .changeDownloadTimeout (-1) 83 .changeCrawlTimeout (-1) 84 ; 85 86 89 public DownloadParameters () { 90 } 91 92 95 public Object clone () { 96 try { 97 return super.clone (); 98 } catch (CloneNotSupportedException e) { 99 throw new RuntimeException ("Internal error: " + e); 100 } 101 } 102 103 108 public int getMaxThreads() { 109 return maxThreads; 110 } 111 116 public DownloadParameters changeMaxThreads(int maxthreads) { 117 DownloadParameters dp = (DownloadParameters)clone(); 118 dp.maxThreads = maxthreads; 119 return dp; 120 } 121 127 public int getMaxPageSize() { 128 return maxPageSize; 129 } 130 136 public DownloadParameters changeMaxPageSize(int maxPageSize) { 137 DownloadParameters dp = (DownloadParameters)clone(); 138 dp.maxPageSize = maxPageSize; 139 return dp; 140 } 141 147 public int getDownloadTimeout() { 148 return downloadTimeout; 149 } 150 156 public DownloadParameters changeDownloadTimeout(int timeout) { 157 DownloadParameters dp = (DownloadParameters)clone(); 158 dp.downloadTimeout = timeout; 159 return dp; 160 } 161 166 public int getCrawlTimeout() { 167 return crawlTimeout; 168 } 169 175 public DownloadParameters changeCrawlTimeout(int timeout) { 176 DownloadParameters dp = (DownloadParameters)clone(); 177 dp.crawlTimeout = timeout; 178 return dp; 179 } 180 186 public boolean getObeyRobotExclusion() { 187 return obeyRobotExclusion; 188 } 189 196 public DownloadParameters changeObeyRobotExclusion(boolean f) { 197 DownloadParameters dp = (DownloadParameters)clone(); 198 dp.obeyRobotExclusion = f; 199 return dp; 200 } 201 207 public boolean getInteractive() { 208 return interactive; 209 } 210 216 public DownloadParameters changeInteractive(boolean f) { 217 DownloadParameters dp = (DownloadParameters)clone(); 218 dp.interactive = f; 219 return dp; 220 } 221 226 public boolean getUseCaches() { 227 return useCaches; 228 } 229 234 public DownloadParameters changeUseCaches(boolean f) { 235 DownloadParameters dp = (DownloadParameters)clone(); 236 dp.useCaches = f; 237 return dp; 238 } 239 246 public String getAcceptedMIMETypes() { 247 return acceptedMIMETypes; 248 } 249 255 public DownloadParameters changeAcceptedMIMETypes(String types) { 256 DownloadParameters dp = (DownloadParameters)clone(); 257 dp.acceptedMIMETypes = types; 258 return dp; 259 } 260 268 public String getUserAgent() { 269 return userAgent; 270 } 271 278 public DownloadParameters changeUserAgent(String userAgent) { 279 DownloadParameters dp = (DownloadParameters)clone(); 280 dp.userAgent = userAgent; 281 return dp; 282 } 283 } 284 | Popular Tags |