Package de.intarsys.tools.locator
Class LocatorViewport
- java.lang.Object
-
- de.intarsys.tools.locator.CommonLocator
-
- de.intarsys.tools.locator.LocatorViewport
-
- All Implemented Interfaces:
IAdapterSupport
,ISynchronizable
,ILocator
public class LocatorViewport extends CommonLocator implements IAdapterSupport
A viewport implementation forILocator
. This object defines a range of bytes visible to the client of the viewport.
-
-
Constructor Summary
Constructors Constructor Description LocatorViewport(ILocator delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
delete()
Delete the artifact referenced by this.boolean
exists()
Answertrue
if the location designated by this exists.<T> T
getAdapter(java.lang.Class<T> clazz)
Return an object of typeclazz
that represents the receiver.ILocator
getChild(java.lang.String name)
The locator for the resourcename
within the context of this.ILocator
getDelegate()
long
getEnd()
java.lang.String
getFullName()
The full physical name of this.java.io.InputStream
getInputStream()
Return anInputStream
on the data represented by the receiver.long
getLength()
Returns the length of this data container or -1 if unknownjava.lang.String
getLocalName()
The local name of the receiver within its parent.java.lang.String
getName()
java.io.OutputStream
getOutputStream()
Return anOutputStream
on the location represented by the receiver.ILocator
getParent()
TheILocator
that is one hierarchy level up or null.IRandomAccess
getRandomAccess()
TheIRandomAccess
for this.java.io.Reader
getReader()
AReader
on the data represented by the receiver.java.io.Reader
getReader(java.lang.String encoding)
AReader
on the data represented by the receiver for the given encoding.long
getStart()
java.lang.String
getType()
The type of the resource.java.lang.String
getTypedName()
The qualified local name of the receiver within its parent that includes the type specification for the destination if appropriate.java.io.Writer
getWriter()
AWriter
on the location represented by the receiver.java.io.Writer
getWriter(java.lang.String encoding)
AWriter
on the location represented by the receiver for the given encoding.boolean
isDirectory()
Answertrue
if the location designated by this is a directory.boolean
isOutOfSynch()
true
if the component is out of synch.boolean
isReadOnly()
true
if the specified resource is read only.ILocator[]
listLocators(ILocatorNameFilter filter)
Return an array ofILocator
that are children of the receiver that conform tofilter
.void
rename(java.lang.String newName)
Rename the complete physical name tonewName
.protected void
setDelegate(ILocator delegate)
void
setEnd(long end)
void
setName(java.lang.String name)
void
setStart(long start)
void
synch()
Perform a synchronization with the components physical resources.java.net.URL
toURL()
The location designated by this as anURL
.-
Methods inherited from class de.intarsys.tools.locator.CommonLocator
createTempFileLocator, setReadOnly
-
-
-
-
Constructor Detail
-
LocatorViewport
public LocatorViewport(ILocator delegate)
-
-
Method Detail
-
delete
public void delete() throws java.io.IOException
Description copied from interface:ILocator
Delete the artifact referenced by this.- Specified by:
delete
in interfaceILocator
- Overrides:
delete
in classCommonLocator
- Throws:
java.io.IOException
-
exists
public boolean exists()
Description copied from interface:ILocator
Answertrue
if the location designated by this exists.
-
getAdapter
public <T> T getAdapter(java.lang.Class<T> clazz)
Description copied from interface:IAdapterSupport
Return an object of typeclazz
that represents the receiver.This method should return
null
if adaption is not possible.- Specified by:
getAdapter
in interfaceIAdapterSupport
- Returns:
- Return an object of type
clazz
that represents the receiver.
-
getChild
public ILocator getChild(java.lang.String name)
Description copied from interface:ILocator
The locator for the resourcename
within the context of this. This may for example be anILocator
to a file within a directory.
-
getDelegate
public ILocator getDelegate()
-
getEnd
public long getEnd()
-
getFullName
public java.lang.String getFullName()
Description copied from interface:ILocator
The full physical name of this.This method returns a representation that is proprietary to the underlying physical representation, for example a file name, a SQL statement or so on.
- Specified by:
getFullName
in interfaceILocator
- Returns:
- The full physical name of the receiver.
-
getInputStream
public java.io.InputStream getInputStream() throws java.io.IOException
Description copied from interface:ILocator
Return anInputStream
on the data represented by the receiver.- Specified by:
getInputStream
in interfaceILocator
- Returns:
- An
InputStream
on the data represented by the receiver. - Throws:
java.io.IOException
-
getLength
public long getLength()
Description copied from interface:ILocator
Returns the length of this data container or -1 if unknown- Specified by:
getLength
in interfaceILocator
- Overrides:
getLength
in classCommonLocator
- Returns:
- the length of this data container, measured in bytes.
-
getLocalName
public java.lang.String getLocalName()
Description copied from interface:ILocator
The local name of the receiver within its parent.- Specified by:
getLocalName
in interfaceILocator
- Returns:
- The local name of the receiver within its parent.
-
getName
public java.lang.String getName()
-
getOutputStream
public java.io.OutputStream getOutputStream() throws java.io.IOException
Description copied from interface:ILocator
Return anOutputStream
on the location represented by the receiver.- Specified by:
getOutputStream
in interfaceILocator
- Returns:
- An
OutputStream
on the location represented by the receiver. - Throws:
java.io.IOException
-
getParent
public ILocator getParent()
Description copied from interface:ILocator
TheILocator
that is one hierarchy level up or null. This may be for example the directory where the currently designated resource is found.
-
getRandomAccess
public IRandomAccess getRandomAccess() throws java.io.IOException
Description copied from interface:ILocator
TheIRandomAccess
for this.- Specified by:
getRandomAccess
in interfaceILocator
- Returns:
- The
IRandomAccess
for this. - Throws:
java.io.IOException
-
getReader
public java.io.Reader getReader() throws java.io.IOException
Description copied from interface:ILocator
AReader
on the data represented by the receiver.
-
getReader
public java.io.Reader getReader(java.lang.String encoding) throws java.io.IOException
Description copied from interface:ILocator
AReader
on the data represented by the receiver for the given encoding.
-
getStart
public long getStart()
-
getType
public java.lang.String getType()
Description copied from interface:ILocator
The type of the resource. This may be for example a mime type or the file extension of the underlying file.
-
getTypedName
public java.lang.String getTypedName()
Description copied from interface:ILocator
The qualified local name of the receiver within its parent that includes the type specification for the destination if appropriate. This is for example a filename with its correct suffix. Some locator may return the same name as "getLocalName".- Specified by:
getTypedName
in interfaceILocator
- Returns:
- The qualified local name of the receiver within its parent that includes the type specification for the destination if appropriate.
-
getWriter
public java.io.Writer getWriter() throws java.io.IOException
Description copied from interface:ILocator
AWriter
on the location represented by the receiver.
-
getWriter
public java.io.Writer getWriter(java.lang.String encoding) throws java.io.IOException
Description copied from interface:ILocator
AWriter
on the location represented by the receiver for the given encoding.
-
isDirectory
public boolean isDirectory()
Description copied from interface:ILocator
Answertrue
if the location designated by this is a directory. A directory location serves as a container for other resources, you can nevergetInputStream
on this.- Specified by:
isDirectory
in interfaceILocator
- Returns:
- Answer
true
if the location designated by this is a directory.
-
isOutOfSynch
public boolean isOutOfSynch()
Description copied from interface:ISynchronizable
true
if the component is out of synch.- Specified by:
isOutOfSynch
in interfaceISynchronizable
- Returns:
true
if the component is out of synch.
-
isReadOnly
public boolean isReadOnly()
Description copied from interface:ILocator
true
if the specified resource is read only.- Specified by:
isReadOnly
in interfaceILocator
- Overrides:
isReadOnly
in classCommonLocator
- Returns:
true
if the specified resource is read only.
-
listLocators
public ILocator[] listLocators(ILocatorNameFilter filter) throws java.io.IOException
Description copied from interface:ILocator
Return an array ofILocator
that are children of the receiver that conform tofilter
. This method never returns null.- Specified by:
listLocators
in interfaceILocator
- Parameters:
filter
- The filter used to examine the child resources.- Returns:
- An array of
ILocator
objects that conform to the filter argument. - Throws:
java.io.IOException
-
rename
public void rename(java.lang.String newName) throws java.io.IOException
Description copied from interface:ILocator
Rename the complete physical name tonewName
.- Specified by:
rename
in interfaceILocator
- Overrides:
rename
in classCommonLocator
- Parameters:
newName
- The new name of theILocator
. The new name is expected to contain both local and type part of the name.- Throws:
java.io.IOException
-
setDelegate
protected void setDelegate(ILocator delegate)
-
setEnd
public void setEnd(long end)
-
setName
public void setName(java.lang.String name)
-
setStart
public void setStart(long start)
-
synch
public void synch()
Description copied from interface:ISynchronizable
Perform a synchronization with the components physical resources.In case of a scheduled synchronization this may be called by an external daemon.
- Specified by:
synch
in interfaceISynchronizable
-
-