Class OWFile
User interfaces and operating systems use system-dependent pathname strings to name files and directories. This class presents an abstract, system-independent view of hierarchical pathnames. An abstract pathname has two components:
- An optional system-dependent prefix string,
such as a disk-drive specifier,"/"
for the UNIX root directory, or"\\"
for a Win32 UNC pathname, and - A sequence of zero or more string names.
The conversion of a pathname string to or from an abstract pathname is
inherently system-dependent. When an abstract pathname is converted into a
pathname string, each name is separated from the next by a single copy of the
default separator character. The default name-separator character is
defined by the system property OWFile.separator
, and is made
available in the public static fields
and separator
of this class.
When a pathname string is converted into an abstract pathname, the names
within it may be separated by the default name-separator character or by any
other name-separator character that is supported by the underlying system.
separatorChar
A pathname, whether abstract or in string form, may be either
absolute or relative. An absolute pathname is complete in
that no other information is required in order to locate the file that it
denotes. A relative pathname, in contrast, must be interpreted in terms of
information taken from some other pathname. By default the classes in the
java.io
package always resolve relative pathnames against the
current user directory. This directory is named by the system property
user.dir
, and is typically the directory in which the Java
virtual machine was invoked. The pathname provided to this OWFile however is
always absolute.
The prefix concept is used to handle root directories on UNIX platforms, and drive specifiers, root directories and UNC pathnames on Win32 platforms, as follows:
- For 1-Wire the Filesystem , the prefix of an absolute pathname is always
"/"
. The abstract pathname denoting the root directory has the prefix"/"
and an empty name sequence.
Instances of the OWFile
class are immutable; that is, once
created, the abstract pathname represented by a OWFile
object
will never change.
What is Different on the 1-Wire Filesystem
The methods in the class are the same as in the java.io.File version 1.2 with the following exceptions
Methods provided but of limited functionality
- public long lastModified() - always returns 0
- public boolean isAbsolute() - always true
- public boolean setLastModified(long time) - does nothing
- public boolean setReadOnly() - only for files
- public boolean isHidden() - only could be true for directories
Methods not provided or supported:
- public void deleteOnExit()
- public String[] list(FilenameFilter filter)
- public File[] listFiles(FilenameFilter filter)
- public File[] listFiles(FileFilter filter)
- public static File createTempFile(String prefix, String suffix, File directory)
- public static File createTempFile(String prefix, String suffix)
- public URL toURL()
Extra Methods (not usually in 1.2 java.io.File)
- public OWFileDescriptor getFD()
- public void close()
- public OneWireContainer getOneWireContainer()
- public void format()
- public int getFreeMemory()
- public int[] getPageList()
- public PagedMemoryBank getMemoryBankForPage(int)
- public int getLocalPage(int)
File and directory name limitations
- File/directory names limited to 4 characters not including extension
- File/directory names are not case sensitive and will be automatically changed to all-CAPS
- Only files can have extensions
- Extensions are numberical in the range 0 to 125
- Extensions 100 to 125 are special purpose and not yet implemented or allowed
- Files can have the read-only attribute
- Directories can have the hidden attribute
- It is recommended to limit directory depth to 10 levels to accommodate legacy implementations
Tips
- Writes will not be flushed to the 1-Wire device Filesystem until
the
OWFile
instance is closed with theclose()
method or thesync()
method from the OWFileDescriptor - The
sync()
method for flushing the changes to the Filesystem is preferred since it can be called multiple times if there is a connection problem - New 1-Wire devices Filesystem must first be formatted with the
format()
method in order for files or directories to be added or changed. - Multiple 1-Wire devices can be linked into a common Filesystem by using
the constructor that accepts an array of 1-Wire devices. The first device in
the list is the 'root' device and the rest will be designated 'satelite's.
Once the
format()
method is used to link these devices then only the 'root' need be used in future constructors of this class or the 1-Wire file stream classes. - Only rewrittable 1-Wire memory devices can be used in multi-device file systems. EPROM and write-once devices can only be used in single device file systems.
- 1-Wire devices have a limited amount of space. Use the
getFreeMemory()
method to get an estimate of free memory available. - Call the
close()
method to release system resources allocated when done with theOWFile
instance
Usage
-
Example 1
Format the Filesystem of the 1-Wire device 'owd':// create a 1-Wire file at root OWFile owfile = new OWFile(owd, ""); // format Filesystem owfile.format(); // get 1-Wire File descriptor to flush to device OWFileDescriptor owfd = owfile.getFD(); // loop until sync is successful do { try { owfd.sync(); done = true; } catch (SyncFailedException e) { // do something ... done = false; } } while (!done) // close the 1-Wire file to release system resources owfile.close();
Example 2
Make a multi-level directory structure on the 1-Wire device 'owd':OWFile owfile = new OWFile(owd, "/doc/text/temp"); // make the directories if (owfile.mkdirs()) System.out.println("Success!"); else System.out.println("Out of memory or invalid file/directory"); // get 1-Wire File descriptor to flush to device ...
1-Wire File Structure Format
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreates a newOWFile
instance from a parent abstract pathname and a child pathname string.OWFile
(OneWireContainer[] owd, String pathname) Creates a newOWFile
instance by converting the given pathname string into an abstract pathname.OWFile
(OneWireContainer owd, String pathname) Creates a newOWFile
instance by converting the given pathname string into an abstract pathname.OWFile
(OneWireContainer owd, String parent, String child) Creates a newOWFile
instance from a parent pathname string and a child pathname string. -
Method Summary
Modifier and TypeMethodDescriptionboolean
canRead()
Tests whether the application can read the file denoted by this abstract pathname.boolean
canWrite()
Tests whether the application can modify to the file denoted by this abstract pathname.void
close()
Closes this file and releases any system resources associated with this stream.int
Compares two abstract pathnames lexicographically.int
Compares this abstract pathname to another object.boolean
Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist.boolean
delete()
Deletes the file or directory denoted by this abstract pathname.boolean
Tests this abstract pathname for equality with the given object.boolean
exists()
Tests whether the file denoted by this abstract pathname exists.protected void
finalize()
Cleans up the connection to the file, and ensures that theclose
method of this file output stream is called when there are no more references to this stream.void
format()
Format the Filesystem on the 1-Wire device provided in the constructor.Returns the absolute form of this abstract pathname.Returns the absolute pathname string of this abstract pathname.Returns the canonical form of this abstract pathname.Returns the canonical pathname string of this abstract pathname.getFD()
Returns theOWFileDescriptor
object that represents the connection to the actual file in the Filesystem being used by thisOWFileInputStream
.int
Gets the number of bytes available on this device for file and directory information.int
getLocalPage
(int page) Gets the local page number on the memory bank object for the specified page.getMemoryBankForPage
(int page) Gets the memory bank object for the specified page.getName()
Returns the name of the file or directory denoted by this abstract pathname.Gets the OneWireContainer that this File resides on.Gets the OneWireContainer(s) that this File resides on.int[]
Gets an array of integers that represents the page list of the file or directory represented by this OWFile.Returns the pathname string of this abstract pathname's parent, ornull
if this pathname does not name a parent directory.Returns the abstract pathname of this abstract pathname's parent, ornull
if this pathname does not name a parent directory.getPath()
Converts this abstract pathname into a pathname string.int
Returns an integer which represents the starting memory page of the file or directory represented by this OWFile.int
hashCode()
Computes a hash code for this abstract pathname.boolean
Tests whether this abstract pathname is absolute.boolean
Tests whether the file denoted by this abstract pathname is a directory.boolean
isFile()
Tests whether the file denoted by this abstract pathname is a normal file.boolean
isHidden()
Tests whether the file named by this abstract pathname is a hidden file.long
Returns the time that the file denoted by this abstract pathname was last modified.long
length()
Returns the length of the file denoted by this abstract pathname.String[]
list()
Returns an array of strings naming the files and directories in the directory denoted by this abstract pathname.OWFile[]
Returns an array of abstract pathnames denoting the files in the directory denoted by this abstract pathname.static OWFile[]
List the available filesystem roots.boolean
mkdir()
Creates the directory named by this abstract pathname.boolean
mkdirs()
Creates the directory named by this abstract pathname, including any necessary but nonexistent parent directories.boolean
Renames the file denoted by this abstract pathname.boolean
setLastModified
(long time) Sets the last-modified time of the file or directory named by this abstract pathname.boolean
Marks the file or directory named by this abstract pathname so that only read operations are allowed.toString()
Returns the pathname string of this abstract pathname.
-
Field Details
-
separator
Field separator- See Also:
-
separatorChar
public static final char separatorCharField separatorChar- See Also:
-
pathSeparator
Field pathSeparator- See Also:
-
pathSeparatorChar
public static final char pathSeparatorCharField pathSeparatorChar- See Also:
-
-
Constructor Details
-
OWFile
Creates a newOWFile
instance by converting the given pathname string into an abstract pathname. If the given string is the empty string, then the result is the empty abstract pathname.- Parameters:
owd
- OneWireContainer that this Filesystem resides onpathname
- A pathname string- Throws:
NullPointerException
- If thepathname
argument isnull
-
OWFile
Creates a newOWFile
instance by converting the given pathname string into an abstract pathname. If the given string is the empty string, then the result is the empty abstract pathname.- Parameters:
owd
- ordered array of OneWireContainers that this Filesystem resides onpathname
- A pathname string- Throws:
NullPointerException
- If thepathname
argument isnull
Change the OWFileDescriptor to accept only an array of containers Change the local ref to be an array Create a single array in constructors with single passed owc
-
OWFile
Creates a newOWFile
instance from a parent pathname string and a child pathname string.If
parent
isnull
then the newOWFile
instance is created as if by invoking the single-argumentOWFile
constructor on the givenchild
pathname string.Otherwise the
parent
pathname string is taken to denote a directory, and thechild
pathname string is taken to denote either a directory or a file. If thechild
pathname string is absolute then it is converted into a relative pathname in a system-dependent way. Ifparent
is the empty string then the newOWFile
instance is created by convertingchild
into an abstract pathname and resolving the result against a system-dependent default directory. Otherwise each pathname string is converted into an abstract pathname and the child abstract pathname is resolved against the parent.- Parameters:
owd
- OneWireContainer that this Filesystem resides onparent
- The parent pathname stringchild
- The child pathname string- Throws:
NullPointerException
- Ifchild
isnull
-
OWFile
Creates a newOWFile
instance from a parent abstract pathname and a child pathname string.If
parent
isnull
then the newOWFile
instance is created as if by invoking the single-argumentOWFile
constructor on the givenchild
pathname string.Otherwise the
parent
abstract pathname is taken to denote a directory, and thechild
pathname string is taken to denote either a directory or a file. If thechild
pathname string is absolute then it is converted into a relative pathname in a system-dependent way. Ifparent
is the empty abstract pathname then the newOWFile
instance is created by convertingchild
into an abstract pathname and resolving the result against a system-dependent default directory. Otherwise each pathname string is converted into an abstract pathname and the child abstract pathname is resolved against the parent.- Parameters:
parent
- The parent abstract pathnamechild
- The child pathname string- Throws:
NullPointerException
- Ifchild
isnull
-
-
Method Details
-
getName
Returns the name of the file or directory denoted by this abstract pathname. This is just the last name in the pathname's name sequence. If the pathname's name sequence is empty, then the empty string is returned.- Returns:
- The name of the file or directory denoted by this abstract pathname, or the empty string if this pathname's name sequence is empty
-
getParent
Returns the pathname string of this abstract pathname's parent, ornull
if this pathname does not name a parent directory.The parent of an abstract pathname consists of the pathname's prefix, if any, and each name in the pathname's name sequence except for the last. If the name sequence is empty then the pathname does not name a parent directory.
- Returns:
- The pathname string of the parent directory named by this abstract
pathname, or
null
if this pathname does not name a parent
-
getParentFile
Returns the abstract pathname of this abstract pathname's parent, ornull
if this pathname does not name a parent directory.The parent of an abstract pathname consists of the pathname's prefix, if any, and each name in the pathname's name sequence except for the last. If the name sequence is empty then the pathname does not name a parent directory.
- Returns:
- The abstract pathname of the parent directory named by this abstract
pathname, or
null
if this pathname does not name a parent
-
getPath
Converts this abstract pathname into a pathname string. The resulting string uses thedefault name-separator character
to separate the names in the name sequence.- Returns:
- The string form of this abstract pathname
-
isAbsolute
public boolean isAbsolute()Tests whether this abstract pathname is absolute. The definition of absolute pathname is system dependent. On UNIX systems, a pathname is absolute if its prefix is"/"
. On Win32 systems, a pathname is absolute if its prefix is a drive specifier followed by"\\"
, or if its prefix is"\\"
.- Returns:
true
if this abstract pathname is absolute,false
otherwise
-
getAbsolutePath
Returns the absolute pathname string of this abstract pathname.If this abstract pathname is already absolute, then the pathname string is simply returned as if by the
method. If this abstract pathname is the empty abstract pathname then the pathname string of the current user directory, which is named by the system propertygetPath()
user.dir
, is returned. Otherwise this pathname is resolved in a system-dependent way. On UNIX systems, a relative pathname is made absolute by resolving it against the current user directory. On Win32 systems, a relative pathname is made absolute by resolving it against the current directory of the drive named by the pathname, if any; if not, it is resolved against the current user directory.- Returns:
- The absolute pathname string denoting the same file or directory as this abstract pathname
- See Also:
-
getAbsoluteFile
Returns the absolute form of this abstract pathname. Equivalent tonew File(this.
.getAbsolutePath()
())- Returns:
- The absolute abstract pathname denoting the same file or directory as this abstract pathname
-
getCanonicalPath
Returns the canonical pathname string of this abstract pathname.The precise definition of canonical form is system-dependent, but canonical forms are always absolute. Thus if this abstract pathname is relative it will be converted to absolute form as if by the
method.getAbsoluteFile()
Every pathname that denotes an existing file or directory has a unique canonical form. Every pathname that denotes a nonexistent file or directory also has a unique canonical form. The canonical form of the pathname of a nonexistent file or directory may be different from the canonical form of the same pathname after the file or directory is created. Similarly, the canonical form of the pathname of an existing file or directory may be different from the canonical form of the same pathname after the file or directory is deleted.
- Returns:
- The canonical pathname string denoting the same file or directory as this abstract pathname
- Throws:
IOException
- If an I/O error occurs, which is possible because the construction of the canonical pathname may require filesystem queries- Since:
- JDK1.1
-
getCanonicalFile
Returns the canonical form of this abstract pathname. Equivalent tonew File(this.
.getCanonicalPath()
())- Returns:
- The canonical pathname string denoting the same file or directory as this abstract pathname
- Throws:
IOException
- If an I/O error occurs, which is possible because the construction of the canonical pathname may require filesystem queries
-
canRead
public boolean canRead()Tests whether the application can read the file denoted by this abstract pathname.- Returns:
true
if and only if the file specified by this abstract pathname exists and can be read by the application;false
otherwise
-
canWrite
public boolean canWrite()Tests whether the application can modify to the file denoted by this abstract pathname.- Returns:
true
if and only if the Filesystem actually contains a file denoted by this abstract pathname and the application is allowed to write to the file;false
otherwise.
-
exists
public boolean exists()Tests whether the file denoted by this abstract pathname exists.- Returns:
true
if and only if the file denoted by this abstract pathname exists;false
otherwise
-
isDirectory
public boolean isDirectory()Tests whether the file denoted by this abstract pathname is a directory.- Returns:
true
if and only if the file denoted by this abstract pathname exists and is a directory;false
otherwise
-
isFile
public boolean isFile()Tests whether the file denoted by this abstract pathname is a normal file. A file is normal if it is not a directory and, in addition, satisfies other system-dependent criteria. Any non-directory file created by a Java application is guaranteed to be a normal file.- Returns:
true
if and only if the file denoted by this abstract pathname exists and is a normal file;false
otherwise
-
isHidden
public boolean isHidden()Tests whether the file named by this abstract pathname is a hidden file. The exact definition of hidden is system-dependent. On UNIX systems, a file is considered to be hidden if its name begins with a period character ('.'
). On Win32 systems, a file is considered to be hidden if it has been marked as such in the filesystem.- Returns:
true
if and only if the file denoted by this abstract pathname is hidden according to the conventions of the underlying platform
-
lastModified
public long lastModified()Returns the time that the file denoted by this abstract pathname was last modified.- Returns:
- A
long
value representing the time the file was last modified, measured in milliseconds since the epoch (00:00:00 GMT, January 1, 1970), or0L
if the file does not exist or if an I/O error occurs
-
length
public long length()Returns the length of the file denoted by this abstract pathname.- Returns:
- The length, in bytes, of the file denoted by this abstract pathname,
or
0L
if the file does not exist
-
createNewFile
Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist. The check for the existence of the file and the creation of the file if it does not exist are a single operation that is atomic with respect to all other filesystem activities that might affect the file.- Returns:
true
if the named file does not exist and was successfully created;false
if the named file already exists- Throws:
IOException
- If an I/O error occurred
-
delete
public boolean delete()Deletes the file or directory denoted by this abstract pathname. If this pathname denotes a directory, then the directory must be empty in order to be deleted.- Returns:
true
if and only if the file or directory is successfully deleted;false
otherwise
-
list
Returns an array of strings naming the files and directories in the directory denoted by this abstract pathname.If this abstract pathname does not denote a directory, then this method returns
null
. Otherwise an array of strings is returned, one for each file or directory in the directory. Names denoting the directory itself and the directory's parent directory are not included in the result. Each string is a file name rather than a complete path.There is no guarantee that the name strings in the resulting array will appear in any specific order; they are not, in particular, guaranteed to appear in alphabetical order.
- Returns:
- An array of strings naming the files and directories in the directory
denoted by this abstract pathname. The array will be empty if the
directory is empty. Returns
null
if this abstract pathname does not denote a directory, or if an I/O error occurs.
-
listFiles
Returns an array of abstract pathnames denoting the files in the directory denoted by this abstract pathname.If this abstract pathname does not denote a directory, then this method returns
null
. Otherwise an array ofOWFile
objects is returned, one for each file or directory in the directory. Pathnames denoting the directory itself and the directory's parent directory are not included in the result. Each resulting abstract pathname is constructed from this abstract pathname using the
constructor. Therefore if this pathname is absolute then each resulting pathname is absolute; if this pathname is relative then each resulting pathname will be relative to the same directory.OWFile(OWFile, String)
There is no guarantee that the name strings in the resulting array will appear in any specific order; they are not, in particular, guaranteed to appear in alphabetical order.
- Returns:
- An array of abstract pathnames denoting the files and directories in
the directory denoted by this abstract pathname. The array will be
empty if the directory is empty. Returns
null
if this abstract pathname does not denote a directory, or if an I/O error occurs.
-
mkdir
public boolean mkdir()Creates the directory named by this abstract pathname.- Returns:
true
if and only if the directory was created;false
otherwise
-
mkdirs
public boolean mkdirs()Creates the directory named by this abstract pathname, including any necessary but nonexistent parent directories. Note that if this operation fails it may have succeeded in creating some of the necessary parent directories.- Returns:
true
if and only if the directory was created, along with all necessary parent directories;false
otherwise
-
renameTo
Renames the file denoted by this abstract pathname.- Parameters:
dest
- The new abstract pathname for the named file- Returns:
true
if and only if the renaming succeeded;false
otherwise- Throws:
NullPointerException
- If parameterdest
isnull
-
setLastModified
public boolean setLastModified(long time) Sets the last-modified time of the file or directory named by this abstract pathname.All platforms support file-modification times to the nearest second, but some provide more precision. The argument will be truncated to fit the supported precision. If the operation succeeds and no intervening operations on the file take place, then the next invocation of the
method will return the (possibly truncated)lastModified()
time
argument that was passed to this method.- Parameters:
time
- The new last-modified time, measured in milliseconds since the epoch (00:00:00 GMT, January 1, 1970)- Returns:
true
if and only if the operation succeeded;false
otherwise- Throws:
IllegalArgumentException
- If the argument is negative
-
setReadOnly
public boolean setReadOnly()Marks the file or directory named by this abstract pathname so that only read operations are allowed. After invoking this method the file or directory is guaranteed not to change until it is either deleted or marked to allow write access. Whether or not a read-only file or directory may be deleted depends upon the underlying system.- Returns:
true
if and only if the operation succeeded;false
otherwise
-
listRoots
List the available filesystem roots.A particular Java platform may support zero or more hierarchically-organized Filesystems. Each Filesystem has a
root
directory from which all other files in that file system can be reached. Windows platforms, for example, have a root directory for each active drive; UNIX platforms have a single root directory, namely"/"
. The set of available filesystem roots is affected by various system-level operations such the insertion or ejection of removable media and the disconnecting or unmounting of physical or virtual disk drives.This method returns an array of
OWFile
objects that denote the root directories of the available filesystem roots. It is guaranteed that the canonical pathname of any file physically present on the local machine will begin with one of the roots returned by this method.The canonical pathname of a file that resides on some other machine and is accessed via a remote-filesystem protocol such as SMB or NFS may or may not begin with one of the roots returned by this method. If the pathname of a remote file is syntactically indistinguishable from the pathname of a local file then it will begin with one of the roots returned by this method. Thus, for example,
OWFile
objects denoting the root directories of the mapped network drives of a Windows platform will be returned by this method, whileOWFile
objects containing UNC pathnames will not be returned by this method.- Parameters:
owc
- OneWireContainer that this Filesystem resides on- Returns:
- An array of
OWFile
objects denoting the available filesystem roots, ornull
if the set of roots could not be determined. The array will be empty if there are no filesystem roots.
-
compareTo
Compares two abstract pathnames lexicographically. The ordering defined by this method depends upon the underlying system. On UNIX systems, alphabetic case is significant in comparing pathnames; on Win32 systems it is not.- Parameters:
pathname
- The abstract pathname to be compared to this abstract pathname- Returns:
- Zero if the argument is equal to this abstract pathname, a value less than zero if this abstract pathname is lexicographically less than the argument, or a value greater than zero if this abstract pathname is lexicographically - greater than the argument
-
compareTo
Compares this abstract pathname to another object. If the other object is an abstract pathname, then this function behaves like
. Otherwise, it throws acompareTo(OWFile)
ClassCastException
, since abstract pathnames can only be compared to abstract pathnames.- Parameters:
o
- TheObject
to be compared to this abstract pathname- Returns:
- If the argument is an abstract pathname, returns zero if the argument is equal to this abstract pathname, a value less than zero if this abstract pathname is lexicographically less than the argument, or a value greater than zero if this abstract pathname is lexicographically greater than the argument
- Throws:
ClassCastException
- if the argument is not an abstract pathname- See Also:
-
equals
Tests this abstract pathname for equality with the given object. Returnstrue
if and only if the argument is notnull
and is an abstract pathname that denotes the same file or directory as this abstract pathname. Whether or not two abstract pathnames are equal depends upon the underlying system. On UNIX systems, alphabetic case is significant in comparing pathnames; on Win32 systems it is not. -
hashCode
public int hashCode()Computes a hash code for this abstract pathname. Because equality of abstract pathnames is inherently system-dependent, so is the computation of their hash codes. On UNIX systems, the hash code of an abstract pathname is equal to the exclusive or of its pathname string and the decimal value1234321
. On Win32 systems, the hash code is equal to the exclusive or of its pathname string, converted to lower case, and the decimal value1234321
. -
toString
Returns the pathname string of this abstract pathname. This is just the string returned by the
method.getPath()
-
getFD
Returns theOWFileDescriptor
object that represents the connection to the actual file in the Filesystem being used by thisOWFileInputStream
.- Returns:
- the file descriptor object associated with this File.
- Throws:
IOException
- if an I/O error occurs.- See Also:
-
getOneWireContainer
Gets the OneWireContainer that this File resides on. This is where the 'filesystem' resides. If this Filesystem spans multiple devices then this method returns the 'MASTER' device.- Returns:
- the OneWireContainer for this Filesystem
-
getOneWireContainers
Gets the OneWireContainer(s) that this File resides on. This is where the 'filesystem' resides. The first device is the 'MASTER' device and the other devices are 'SATELLITE' devices.- Returns:
- the OneWireContainer(s) for this Filesystem
-
format
Format the Filesystem on the 1-Wire device provided in the constructor. This operation is required before any file IO is possible.WARNING this will remove any files/directories.
- Throws:
IOException
- if an I/O error occurs.
-
getFreeMemory
Gets the number of bytes available on this device for file and directory information.- Returns:
- number of free bytes in the Filesystem
- Throws:
IOException
- if an I/O error occurs
-
close
Closes this file and releases any system resources associated with this stream. This file may no longer be used after this operation.- Throws:
IOException
- if an I/O error occurs.
-
getPageList
Gets an array of integers that represents the page list of the file or directory represented by this OWFile.- Returns:
- node page list file or directory
- Throws:
IOException
- if an I/O error occurs.
-
getStartPage
Returns an integer which represents the starting memory page of the file or directory represented by this OWFile.- Returns:
- The starting page of the file or directory.
- Throws:
IOException
- if the file doesn't exist
-
getMemoryBankForPage
Gets the memory bank object for the specified page. This is significant if the Filesystem spans memory banks on the same or different devices.- Returns:
- PagedMemoryBank for the specified page
-
getLocalPage
public int getLocalPage(int page) Gets the local page number on the memory bank object for the specified page. This is significant if the Filesystem spans memory banks on the same or different devices.- Returns:
- local page for the specified Filesystem page (memory bank specific)
-
finalize
Cleans up the connection to the file, and ensures that theclose
method of this file output stream is called when there are no more references to this stream.- Overrides:
finalize
in classObject
- Throws:
IOException
- if an I/O error occurs.- See Also:
-