1 /* RsyncURLConnection.java
2 *
3 * $Id: RsyncURLConnection.java 4510 2006-08-18 16:13:32Z stack-sf $
4 *
5 * Created Jul 19, 2005
6 *
7 * Copyright (C) 2005 Internet Archive.
8 *
9 * This file is part of the Heritrix web crawler (crawler.archive.org).
10 *
11 * Heritrix is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser Public License as published by
13 * the Free Software Foundation; either version 2.1 of the License, or
14 * any later version.
15 *
16 * Heritrix is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser Public License
22 * along with Heritrix; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */
25 package org.archive.net.rsync;
26
27 import java.io.File;
28 import java.net.URL;
29
30 import org.archive.net.DownloadURLConnection;
31
32 /***
33 * Rsync URL connection.
34 * @author stack
35 * @version $Date: 2006-08-18 16:13:32 +0000 (Fri, 18 Aug 2006) $, $Revision: 4510 $
36 */
37 public class RsyncURLConnection extends DownloadURLConnection {
38 private final String RSYNC_TIMEOUT =
39 System.getProperty(RsyncURLConnection.class.getName() + ".timeout",
40 "300");
41
42 protected RsyncURLConnection(URL u) {
43 super(u);
44 }
45
46 protected String getScript() {
47 return System.getProperty(this.getClass().getName() + ".path",
48 "rsync");
49 }
50
51 @Override
52 protected String[] getCommand(final URL thisUrl,
53 final File downloadFile) {
54 return new String[] {getScript(), "--timeout=" + RSYNC_TIMEOUT,
55 this.url.getPath(), downloadFile.getAbsolutePath()};
56 }
57 }