Package de.intarsys.tools.locator
Class FileLocator
java.lang.Object
de.intarsys.tools.locator.CommonLocator
de.intarsys.tools.locator.FileLocator
- All Implemented Interfaces:
ISynchronizable
,ILocator
,ILockSupport
File based implementation of
ILocator
.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
delete()
Delete the artifact referenced by this.boolean
boolean
exists()
Answertrue
if the location designated by this exists.The canonical file represented by this.The locator for the resourcename
within the context of this.protected String
The encoding of the file.getFile()
Answer the file represented by this.The full physical name of this.Return anInputStream
on the data represented by the receiver.protected long
Answer the timestamp of the last modification.long
Returns the length of this data container or -1 if unknownThe local name of the receiver within its parent.getLock()
Return anOutputStream
on the location represented by the receiver.TheILocator
that is one hierarchy level up or null.TheIRandomAccess
for this.AReader
on the data represented by the receiver.AReader
on the data represented by the receiver for the given encoding.getType()
The type of the resource.The qualified local name of the receiver within its parent that includes the type specification for the destination if appropriate.AWriter
on the location represented by the receiver.AWriter
on the location represented by the receiver for the given encoding.int
hashCode()
boolean
Answertrue
if the location designated by this is a directory.boolean
true
if the component is out of synch.boolean
true
if the specified resource is read only.boolean
boolean
true
if temp file should be used.ILocator[]
listLocators
(ILocatorNameFilter filter) Return an array ofILocator
that are children of the receiver that conform tofilter
.void
Rename the complete physical name tonewName
.protected void
setEncoding
(String encoding) void
setSynchSynchronous
(boolean synchSynchronous) void
setUseTempFile
(boolean useTempFile) void
synch()
Perform a synchronization with the components physical resources.toString()
toURL()
The location designated by this as anURL
.Methods inherited from class de.intarsys.tools.locator.CommonLocator
createTempFileLocator, setReadOnly
-
Constructor Details
-
FileLocator
-
FileLocator
-
-
Method Details
-
delete
Description copied from interface:ILocator
Delete the artifact referenced by this.- Specified by:
delete
in interfaceILocator
- Overrides:
delete
in classCommonLocator
- Throws:
IOException
-
equals
-
exists
public boolean exists()Description copied from interface:ILocator
Answertrue
if the location designated by this exists. -
getCanonicalFile
The canonical file represented by this.- Returns:
- The canonical file represented by this.
-
getChild
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. -
getEncoding
The encoding of the file.- Returns:
- Returns the encoding.
-
getFile
Answer the file represented by this.- Returns:
- The canonical file represented by this.
-
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
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:
IOException
-
getLastModified
protected long getLastModified()Answer the timestamp of the last modification.- Returns:
- the timestamp of the last modification.
-
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.
- Throws:
IOException
- if an I/O error occurs.
-
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.
-
getLock
- Specified by:
getLock
in interfaceILockSupport
-
getOutputStream
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:
IOException
-
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
Description copied from interface:ILocator
TheIRandomAccess
for this.- Specified by:
getRandomAccess
in interfaceILocator
- Returns:
- The
IRandomAccess
for this. - Throws:
IOException
-
getReader
Description copied from interface:ILocator
AReader
on the data represented by the receiver.- Specified by:
getReader
in interfaceILocator
- Returns:
- A
Reader
on the data represented by the receiver. - Throws:
IOException
-
getReader
Description copied from interface:ILocator
AReader
on the data represented by the receiver for the given encoding.- Specified by:
getReader
in interfaceILocator
- Parameters:
newEncoding
- The encoding.- Returns:
- A
Reader
on the data represented by the receiver for the given encoding. - Throws:
IOException
-
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
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
Description copied from interface:ILocator
AWriter
on the location represented by the receiver.- Specified by:
getWriter
in interfaceILocator
- Returns:
- A
Writer
on the location represented by the receiver. - Throws:
IOException
-
getWriter
Description copied from interface:ILocator
AWriter
on the location represented by the receiver for the given encoding.- Specified by:
getWriter
in interfaceILocator
- Parameters:
newEncoding
- The encoding.- Returns:
- A
Writer
on the location represented by the receiver for the given encoding. - Throws:
IOException
-
hashCode
public int hashCode() -
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.
-
isSynchSynchronous
public boolean isSynchSynchronous() -
isUseTempFile
public boolean isUseTempFile()true
if temp file should be used.- Returns:
true
if temp file should be used.
-
listLocators
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:
IOException
-
rename
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:
IOException
-
setEncoding
-
setSynchSynchronous
public void setSynchSynchronous(boolean synchSynchronous) - Parameters:
synchSynchronous
-
-
setUseTempFile
public void setUseTempFile(boolean useTempFile) - Parameters:
useTempFile
-
-
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
-
toString
-
toURL
Description copied from interface:ILocator
The location designated by this as anURL
.
-