|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.mmm.util.resource.base.AbstractDataResource
net.sf.mmm.util.resource.base.AbstractBrowsableResource
net.sf.mmm.util.resource.base.FileResource
public class FileResource
This is the implementation of the BrowsableResource
interface for a
resource that is a regular
File
.
Nested Class Summary | |
---|---|
protected class |
FileResource.FileResourceIterable
This inner class is an Iterable of FileResource s. |
protected static class |
FileResource.FileResourceIterator
This inner class is an Iterator of FileResource s. |
Field Summary | |
---|---|
private File |
file
The File to adapt. |
static String |
SCHEME_PREFIX
The scheme-prefix for this type of
BrowsableResource . |
Constructor Summary | |
---|---|
FileResource(File file)
The constructor. |
|
FileResource(String filePath)
The constructor. |
Method Summary | |
---|---|
Iterable<BrowsableResource> |
getChildResources()
This method iterates the immediate child- resources contained in this BrowsableResource . |
Date |
getLastModificationDate()
This method gets the last modification date of the DataResource if
available and supported. |
String |
getName()
This method gets the name of the resource. |
String |
getPath()
This method gets the path of this resource. |
String |
getSchemePrefix()
This method gets the scheme-prefix of absolute URIs for this type of DataResource . |
long |
getSize()
This method gets the size (content-length) of this resource. |
String |
getUri()
This method gets a string identifying this DataResource . |
URL |
getUrl()
This method gets this resource as URL . |
boolean |
isData()
This method determines if this resource has potentially data available . |
boolean |
isFolder()
This method determines if this BrowsableResource is a
folder that potentially contains other resources . |
BrowsableResource |
navigate(String resourcePath)
This method creates a new DataResource pointing to the given
resourcePath based on this resource. |
OutputStream |
openOutputStream()
This method opens an output-stream in order to write data to the resource. |
InputStream |
openStream()
This method opens this resource for reading. |
Methods inherited from class net.sf.mmm.util.resource.base.AbstractBrowsableResource |
---|
getChildResources |
Methods inherited from class net.sf.mmm.util.resource.base.AbstractDataResource |
---|
isAvailable, isModifiedSince, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface net.sf.mmm.util.resource.api.DataResource |
---|
isAvailable, isModifiedSince |
Field Detail |
---|
public static final String SCHEME_PREFIX
scheme-prefix
for this type of
BrowsableResource
.
private final File file
File
to adapt.
Constructor Detail |
---|
public FileResource(File file)
file
- is the File
to represent.public FileResource(String filePath)
filePath
- is the path
to the File
to
represent.Method Detail |
---|
public String getSchemePrefix()
URIs
for this type of DataResource
. The scheme-prefix has the
following form:
<scheme>
:<suffix>
where <suffix>
is the empty string or something like
//
.
getSchemePrefix
in class AbstractDataResource
public String getPath()
name
of the resource.created
.
getPath
in interface DataResource
getPath
in class AbstractDataResource
public long getSize() throws ResourceNotAvailableException
getSize
in interface DataResource
getSize
in class AbstractDataResource
ResourceNotAvailableException
- if this resource is NOT
available
.public InputStream openStream()
openStream
in interface DataResource
openStream
in class AbstractDataResource
URL.openStream()
public OutputStream openOutputStream() throws ResourceNotWritableException
openOutputStream
in interface DataResource
openOutputStream
in class AbstractDataResource
OutputStream
to write to the resource.
ResourceNotWritableException
- if the resource is NOT writable (e.g.
read-only).public URL getUrl() throws ResourceNotAvailableException
URL
.
ResourceNotAvailableException
- if an URL can NOT be created because
the represented resource does not exist.public String getUri()
DataResource
. In most
cases this will be the same as string-representation
of the URL
. However this method
will not throw an exception.
getUri
in interface DataResource
getUri
in class AbstractDataResource
public String getName()
filename
.
getName
in interface DataResource
getName
in class AbstractDataResource
public boolean isData()
available
. Unlike DataResource.isAvailable()
this method
will not invoke expensive operations like connecting to remote URLs. If
this method will return false
, then DataResource.isAvailable()
would also have returned false
. However in case of
true
only DataResource.isAvailable()
can guarantee if a resource
really exists and contains data. E.g. if the resource points to a
File
then this method can check if it is a
data-file
. So in case it points to a
directory or does not exist at all in the filesystem, this method will
return false
. Please also note that this may invoke expensive
operations if the according directory path points to something like a
network share. You should also be aware that the state of DataResource.isData()
and DataResource.isAvailable()
can change at any time so you never have a full
guarantee if some data exists or NOT. However in most cases it is very
improbable that this status changes when you read
the
resource immediately after the check.
true
if this resource points to potential data,
false
otherwise.public boolean isFolder()
BrowsableResource
is a
folder that potentially contains other resources
. Otherwise if this is no folder, BrowsableResource.getChildResources()
will be empty (return an empty Iterable
). However
BrowsableResource.getChildResources()
can also be empty, if this is a folder.BrowsableResource
is
containing data
, please use DataResource.isAvailable()
.
Please note that BrowsableResource.isFolder()
and DataResource.isAvailable()
can both
return true
or both return false
.
true
if this is a folder, false
otherwise.public Date getLastModificationDate()
DataResource
if
available
and supported.
Date
or null
if not
available or supported.public BrowsableResource navigate(String resourcePath)
DataResource
pointing to the given
resourcePath
based on this resource.relativePath
would be "../apt/sources.list" the resulting
resource would point to "/etc/apt/sources.list".
resourcePath
- is the absolute or relative path pointing to a new
resource. If it is a relative path, it is interpreted relative to
the parent URI (directory) of this resource.
public Iterable<BrowsableResource> getChildResources()
resources
contained in this BrowsableResource
.folder
, this method will always return an
empty Iterable
.
Iterable
of the child-resources
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |