package com.limegroup.gnutella.downloader; import java.io.Serializable; import java.net.URL; import java.util.Set; import com.limegroup.gnutella.RemoteFileDesc; import com.limegroup.gnutella.xml.LimeXMLDocument; /** * A RemoteFileDesc augmented with a URL, which might be different from the * standard '/get/<index>/<name>'. Overrides the getUrl() method of * RemoteFileDesc. */ public class URLRemoteFileDesc extends RemoteFileDesc implements Serializable { /** Ensures versioning. */ static final long serialVersionUID = 820347987014466054L; /** The return value for getUrl */ private URL _url; /** * Constructs a new RemoteFileDesc. * @param url the url */ public URLRemoteFileDesc(String host, int port, long index, String filename, int size, byte[] clientGUID, int speed, boolean chat, int quality, boolean browseHost, LimeXMLDocument xmlDoc, Set urns, boolean replyToMulticast, boolean firewalled, String vendor, long timestamp, URL url, Set proxies, int FWTversion) { super(host, port, index, filename, size, clientGUID, speed, chat, quality, browseHost, xmlDoc, urns, replyToMulticast, firewalled, vendor, timestamp, proxies, -1, FWTversion); this._url=url; } /** * Returns the URL specified at construction time, which might be totally * independent of getName()/getIndex(). */ public URL getUrl() { return _url; } }