|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.mmm.util.resource.base.AbstractDataResourceProxy
public abstract class AbstractDataResourceProxy
This is an abstract implementation of the DataResource
interface that
delegates to another
DataResource
.
Constructor Summary | |
---|---|
AbstractDataResourceProxy()
The constructor. |
Method Summary | |
---|---|
protected abstract DataResource |
getDelegate()
This method gets the DataResource this proxy delegates to. |
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. |
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 |
isAvailable()
This method determines if this resource is available. |
boolean |
isData()
This method determines if this resource has potentially data available . |
Boolean |
isModifiedSince(Date date)
This method determines if this resource has been been modified since the given data . |
DataResource |
navigate(String relativePath)
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. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public AbstractDataResourceProxy()
Method Detail |
---|
protected abstract DataResource getDelegate()
DataResource
this proxy delegates to.
public String getPath()
name
of the resource.created
.
getPath
in interface DataResource
public String getName()
filename
.
getName
in interface DataResource
public long getSize()
getSize
in interface DataResource
public URL getUrl()
URL
.
getUrl
in interface DataResource
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
public boolean isAvailable()
data can be read
.DataResource.isData()
to prevent such expensive operaitons.
isAvailable
in interface DataResource
true
if this resource is available, false
otherwise.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.
isData
in interface DataResource
true
if this resource points to potential data,
false
otherwise.public DataResource navigate(String relativePath)
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".
navigate
in interface DataResource
relativePath
- 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 InputStream openStream()
openStream
in interface DataResource
URL.openStream()
public OutputStream openOutputStream()
openOutputStream
in interface DataResource
OutputStream
to write to the resource.public Boolean isModifiedSince(Date date)
data
.
isModifiedSince
in interface DataResource
date
- is the Date
to check for.
true
if the resource has been modified after the given
date
, false
if it has NOT been modified
after the given date
and null
if this can
NOT be determined (resource not available
or
operation NOT supported by this resource).public Date getLastModificationDate()
DataResource
if
available
and supported.
getLastModificationDate
in interface DataResource
Date
or null
if not
available or supported.public String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |