|
||||||||||
| 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 DataResourcepublic String getName()
filename.
getName in interface DataResourcepublic long getSize()
getSize in interface DataResourcepublic URL getUrl()
URL.
getUrl in interface DataResourcepublic 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 DataResourcepublic boolean isAvailable()
data can be read.DataResource.isData() to prevent such expensive operaitons.
isAvailable in interface DataResourcetrue 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 DataResourcetrue 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 DataResourcerelativePath - 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 DataResourceURL.openStream()public OutputStream openOutputStream()
openOutputStream in interface DataResourceOutputStream to write to the resource.public Boolean isModifiedSince(Date date)
data.
isModifiedSince in interface DataResourcedate - 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 DataResourceDate 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 | |||||||||