public class UrlResource extends AbstractFileResolvingResource
Resource implementation for java.net.URL locators.
 Supports resolution as a URL and also as a File in
 case of the "file:" protocol.URL| Constructor and Description | 
|---|
| UrlResource(String path)Create a new  UrlResourcebased on a URL path. | 
| UrlResource(String protocol,
           String location)Create a new  UrlResourcebased on a URI specification. | 
| UrlResource(String protocol,
           String location,
           String fragment)Create a new  UrlResourcebased on a URI specification. | 
| UrlResource(URI uri)Create a new  UrlResourcebased on the given URI object. | 
| UrlResource(URL url)Create a new  UrlResourcebased on the given URL object. | 
| Modifier and Type | Method and Description | 
|---|---|
| Resource | createRelative(String relativePath)This implementation creates a  UrlResource, delegating tocreateRelativeURL(String)for adapting the relative path. | 
| protected URL | createRelativeURL(String relativePath)This delegate creates a  java.net.URL, applying the given path
 relative to the path of the underlying URL of this resource descriptor. | 
| boolean | equals(Object other)This implementation compares the underlying URL references. | 
| String | getDescription()This implementation returns a description that includes the URL. | 
| File | getFile()This implementation returns a File reference for the underlying URL/URI,
 provided that it refers to a file in the file system. | 
| String | getFilename()This implementation returns the name of the file that this URL refers to. | 
| InputStream | getInputStream()This implementation opens an InputStream for the given URL. | 
| URI | getURI()This implementation returns the underlying URI directly,
 if possible. | 
| URL | getURL()This implementation returns the underlying URL reference. | 
| int | hashCode()This implementation returns the hash code of the underlying URL reference. | 
| boolean | isFile()This implementation always returns  false. | 
contentLength, customizeConnection, customizeConnection, exists, getFile, getFileForLastModifiedCheck, isFile, isReadable, lastModified, readableChannelisOpen, toStringpublic UrlResource(URI uri) throws MalformedURLException
UrlResource based on the given URI object.uri - a URIMalformedURLException - if the given URL path is not validpublic UrlResource(URL url)
UrlResource based on the given URL object.url - a URLpublic UrlResource(String path) throws MalformedURLException
UrlResource based on a URL path.
 Note: The given path needs to be pre-encoded if necessary.
path - a URL pathMalformedURLException - if the given URL path is not validURL.URL(String)public UrlResource(String protocol, String location) throws MalformedURLException
UrlResource based on a URI specification.
 The given parts will automatically get encoded if necessary.
protocol - the URL protocol to use (e.g. "jar" or "file" - without colon);
 also known as "scheme"location - the location (e.g. the file path within that protocol);
 also known as "scheme-specific part"MalformedURLException - if the given URL specification is not validURI.URI(String, String, String)public UrlResource(String protocol, String location, @Nullable String fragment) throws MalformedURLException
UrlResource based on a URI specification.
 The given parts will automatically get encoded if necessary.
protocol - the URL protocol to use (e.g. "jar" or "file" - without colon);
 also known as "scheme"location - the location (e.g. the file path within that protocol);
 also known as "scheme-specific part"fragment - the fragment within that location (e.g. anchor on an HTML page,
 as following after a "#" separator)MalformedURLException - if the given URL specification is not validURI.URI(String, String, String)public InputStream getInputStream() throws IOException
It sets the useCaches flag to false,
 mainly to avoid jar file locking on Windows.
null)FileNotFoundException - if the underlying resource doesn't existIOException - if the content stream could not be openedURL.openConnection(), 
URLConnection.setUseCaches(boolean), 
URLConnection.getInputStream()public URL getURL()
getURL in interface ResourcegetURL in class AbstractResourcepublic URI getURI() throws IOException
getURI in interface ResourcegetURI in class AbstractResourceIOException - if the resource cannot be resolved as URI,
 i.e. if the resource is not available as descriptorpublic boolean isFile()
AbstractResourcefalse.isFile in interface ResourceisFile in class AbstractFileResolvingResourceResource.getFile()public File getFile() throws IOException
getFile in interface ResourcegetFile in class AbstractFileResolvingResourceFileNotFoundException - if the resource cannot be resolved as
 absolute file path, i.e. if the resource is not available in a file systemIOException - in case of general resolution/reading failuresResourceUtils.getFile(java.net.URL, String)public Resource createRelative(String relativePath) throws MalformedURLException
UrlResource, delegating to
 createRelativeURL(String) for adapting the relative path.createRelative in interface ResourcecreateRelative in class AbstractResourcerelativePath - the relative path (relative to this resource)MalformedURLExceptioncreateRelativeURL(String)protected URL createRelativeURL(String relativePath) throws MalformedURLException
java.net.URL, applying the given path
 relative to the path of the underlying URL of this resource descriptor.
 A leading slash will get dropped; a "#" symbol will get encoded.MalformedURLExceptioncreateRelative(String), 
URL.URL(java.net.URL, String)public String getFilename()
getFilename in interface ResourcegetFilename in class AbstractResourceURL.getPath()public String getDescription()
Object.toString()public boolean equals(@Nullable Object other)
equals in class AbstractResourceResource.getDescription()public int hashCode()
hashCode in class AbstractResourceResource.getDescription()