public class PathResource extends Resource
__defaultUseCaches| Constructor and Description |
|---|
PathResource(File file)
Construct a new PathResource from a File object.
|
PathResource(Path path)
Construct a new PathResource from a Path object.
|
PathResource(URI uri)
Construct a new PathResource from a URI object.
|
PathResource(URL url)
Create a new PathResource from a provided URL object.
|
| Modifier and Type | Method and Description |
|---|---|
Resource |
addPath(String subpath)
Returns the resource contained inside the current resource with the
given name.
|
void |
close()
Release any temporary resources held by the resource.
|
void |
copyTo(File destination)
Copy the Resource to the new destination file.
|
boolean |
delete()
Deletes the given resource
|
boolean |
equals(Object obj) |
boolean |
exists() |
URI |
getAlias() |
Path |
getAliasPath()
The Alias as a Path.
|
File |
getFile()
File representing the given resource.
|
InputStream |
getInputStream()
Input stream to the resource
|
String |
getName()
The name of the resource.
|
Path |
getPath() |
ReadableByteChannel |
getReadableByteChannel()
Readable ByteChannel for the resource.
|
URI |
getURI()
URI representing the resource.
|
URL |
getURL()
URL representing the resource.
|
int |
hashCode() |
boolean |
isAlias() |
boolean |
isContainedIn(Resource r) |
boolean |
isDirectory() |
static boolean |
isSameName(Path pathA,
Path pathB)
Test if the paths are the same name.
|
long |
lastModified()
Time resource was last modified.
|
long |
length()
Length of the resource.
|
String[] |
list()
list of resource names contained in the given resource.
|
SeekableByteChannel |
newSeekableByteChannel() |
boolean |
renameTo(Resource dest)
Rename the given resource
|
String |
toString() |
void |
writeTo(OutputStream outputStream,
long start,
long count) |
encode, getAllResources, getAssociate, getDefaultUseCaches, getListHTML, getListHTML, getResource, getWeakETag, getWeakETag, isContainedIn, newClassPathResource, newClassPathResource, newResource, newResource, newResource, newResource, newResource, newResource, newSystemResource, release, setAssociate, setDefaultUseCaches, toURLpublic PathResource(File file)
An invocation of this convenience constructor of the form.
new PathResource(file);
behaves in exactly the same way as the expression
new PathResource(file.toPath());
file - the file to usepublic PathResource(Path path)
path - the path to usepublic PathResource(URI uri) throws IOException
Must be an absolute URI using the file scheme.
uri - the URI to build this PathResource from.IOException - if unable to construct the PathResource from the URI.public PathResource(URL url) throws IOException, URISyntaxException
An invocation of this convenience constructor of the form.
new PathResource(url);
behaves in exactly the same way as the expression
new PathResource(url.toURI());
url - the url to attempt to create PathResource fromIOException - if URL doesn't point to a location that can be transformed to a PathResourceURISyntaxException - if the provided URL was malformedpublic static boolean isSameName(Path pathA, Path pathB)
If the real path is not the same as the absolute path then we know that the real path is the alias for the provided path.
For OS's that are case insensitive, this should return the real (on-disk / case correct) version of the path.
We have to be careful on Windows and OSX.
Assume we have the following scenario:
Path a = new File("foo").toPath();
Files.createFile(a);
Path b = new File("FOO").toPath();
There now exists a file called foo on disk.
Using Windows or OSX, with a Path reference of
FOO, Foo, fOO, etc.. means the following
| OSX | Windows | Linux
-----------------------+---------+------------+---------
Files.exists(a) | True | True | True
Files.exists(b) | True | True | False
Files.isSameFile(a,b) | True | True | False
a.equals(b) | False | True | False
See the javadoc for Path.equals() for details about this FileSystem behavior difference
We also cannot rely on a.compareTo(b) as this is roughly equivalent in implementation to a.equals(b)
public Resource addPath(String subpath) throws IOException
ResourceaddPath in class Resourcesubpath - The path segment to add, which is not encodedIOException - if unable to resolve the pathMalformedURLException - if the resolution of the path fails because the input path parameter is malformed.public void close()
Resourcepublic boolean delete()
throws SecurityException
Resourcedelete in class ResourceSecurityException - if unable to delete due to permissionspublic boolean exists()
public File getFile() throws IOException
ResourcegetFile in class ResourceIOException - if unable to get the resource due to permissionspublic InputStream getInputStream() throws IOException
ResourcegetInputStream in class ResourceIOException - if unable to open the input streampublic ReadableByteChannel getReadableByteChannel() throws IOException
ResourcegetReadableByteChannel in class ResourceIOException - if unable to open the readable bytechannel for the resource.public SeekableByteChannel newSeekableByteChannel() throws IOException
IOExceptionpublic boolean isContainedIn(Resource r) throws MalformedURLException
isContainedIn in class ResourceMalformedURLExceptionpublic boolean isDirectory()
isDirectory in class Resourcepublic long lastModified()
ResourcelastModified in class Resourcepublic long length()
Resourcepublic boolean isAlias()
public Path getAliasPath()
Note: this cannot return the alias as a DIFFERENT path in 100% of situations, due to Java's internal Path/File normalization.
public URI getAlias()
public String[] list()
Resourcepublic boolean renameTo(Resource dest) throws SecurityException
ResourcerenameTo in class Resourcedest - the destination name for the resourceSecurityException - if unable to rename due to permissionspublic void copyTo(File destination) throws IOException
ResourceWill not replace existing destination file.
copyTo in class Resourcedestination - the destination file to createIOException - if unable to copy the resourcepublic void writeTo(OutputStream outputStream, long start, long count) throws IOException
writeTo in class ResourceoutputStream - the output stream to write tostart - First byte to writecount - Bytes to write or -1 for all of them.IOException - if unable to copy the Resource to the outputCopyright © 2010 - 2020 Adobe. All Rights Reserved