org.basex.io
Class IO

java.lang.Object
  extended by org.basex.io.IO
Direct Known Subclasses:
IOContent, IOFile, IOUrl

public abstract class IO
extends java.lang.Object

Abstract file representation, pointing to a local or remote file or a byte array.

Author:
Workgroup DBIS, University of Konstanz 2005-09, ISC License, Christian Gruen

Field Summary
static java.lang.String BASEXSUFFIX
          Database suffix.
static double BLOCKFILL
          Fill Factor (greater than 0.0, maximum 1.0).
static int BLOCKSIZE
          Disk block/page size.
static IO DUMMY
          Return IO dummy instance.
static java.lang.String GZSUFFIX
          GZIP Suffix.
static int MAXHEIGHT
          Maximum Tree depth.
static int NODEPOWER
          Table NodeSize Power.
static java.lang.String XMLSUFFIX
          XML Suffix.
static java.lang.String XQSUFFIX
          XQuery Suffix.
static java.lang.String ZIPSUFFIX
          ZIP Suffix.
 
Method Summary
abstract  BufferInput buffer()
          Returns a buffered reader for the file.
abstract  void cache()
          Caches the contents.
 IO[] children()
          Returns the children of a document.
 byte[] content()
          Returns the contents.
 long date()
          Returns the modification date of this file.
 java.lang.String dbname()
          Chops the path and the XML suffix of the specified filename and returns the database name.
 boolean delete()
          Chops the path and the XML suffix of the specified filename.
 java.lang.String dir()
          Returns the directory.
 boolean eq(IO io)
          Compares the filename of the specified IO reference.
 boolean exists()
          Verifies if the file exists.
static java.lang.String file(java.lang.String url)
          Creates a file path from the specified URL.
static IO get(java.lang.String s)
          Constructor.
 java.lang.String getDir()
          Returns the directory of this path.
abstract  org.xml.sax.InputSource inputSource()
          Returns the next input source.
 boolean isDir()
          Returns if this is a directory instance.
 long length()
          Returns the file length.
 IO merge(IO f)
          Merges two filenames.
 boolean more()
          Checks if more input streams are found.
 java.lang.String name()
          Chops the path of the specified filename.
 java.lang.String path()
          Returns the path.
 void suffix(java.lang.String suf)
          Sets the specified suffix if none exists.
 java.lang.String toString()
           
static java.lang.String url(java.lang.String path)
          Creates a URL from the specified path.
static boolean valid(java.lang.String fn)
          Checks if the specified filename is valid; allows only letters, digits and some special characters.
 void write(byte[] c)
          Writes the specified file contents.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DUMMY

public static final IO DUMMY
Return IO dummy instance.


BASEXSUFFIX

public static final java.lang.String BASEXSUFFIX
Database suffix.

See Also:
Constant Field Values

XQSUFFIX

public static final java.lang.String XQSUFFIX
XQuery Suffix.

See Also:
Constant Field Values

XMLSUFFIX

public static final java.lang.String XMLSUFFIX
XML Suffix.

See Also:
Constant Field Values

ZIPSUFFIX

public static final java.lang.String ZIPSUFFIX
ZIP Suffix.

See Also:
Constant Field Values

GZSUFFIX

public static final java.lang.String GZSUFFIX
GZIP Suffix.

See Also:
Constant Field Values

BLOCKSIZE

public static final int BLOCKSIZE
Disk block/page size.

See Also:
Constant Field Values

NODEPOWER

public static final int NODEPOWER
Table NodeSize Power.

See Also:
Constant Field Values

BLOCKFILL

public static final double BLOCKFILL
Fill Factor (greater than 0.0, maximum 1.0).

See Also:
Constant Field Values

MAXHEIGHT

public static final int MAXHEIGHT
Maximum Tree depth.

See Also:
Constant Field Values
Method Detail

get

public static IO get(java.lang.String s)
Constructor.

Parameters:
s - source
Returns:
IO reference

content

public final byte[] content()
                     throws java.io.IOException
Returns the contents.

Returns:
contents
Throws:
java.io.IOException - I/O exception

cache

public abstract void cache()
                    throws java.io.IOException
Caches the contents.

Throws:
java.io.IOException - I/O exception

exists

public boolean exists()
Verifies if the file exists.

Returns:
result of check

isDir

public boolean isDir()
Returns if this is a directory instance.

Returns:
result of check

getDir

public final java.lang.String getDir()
Returns the directory of this path.

Returns:
result of check

date

public long date()
Returns the modification date of this file.

Returns:
modification date

length

public long length()
Returns the file length.

Returns:
file length

more

public boolean more()
             throws java.io.IOException
Checks if more input streams are found.

Returns:
result of check
Throws:
java.io.IOException - I/O exception

inputSource

public abstract org.xml.sax.InputSource inputSource()
Returns the next input source.

Returns:
input source

buffer

public abstract BufferInput buffer()
                            throws java.io.IOException
Returns a buffered reader for the file.

Returns:
buffered reader
Throws:
java.io.IOException - I/O exception

merge

public IO merge(IO f)
Merges two filenames.

Parameters:
f - filename of the file
Returns:
contents

suffix

public final void suffix(java.lang.String suf)
Sets the specified suffix if none exists.

Parameters:
suf - suffix

dbname

public final java.lang.String dbname()
Chops the path and the XML suffix of the specified filename and returns the database name. If no name can be extracted, "database" will be used as default name.

Returns:
database name

name

public final java.lang.String name()
Chops the path of the specified filename.

Returns:
file name

path

public final java.lang.String path()
Returns the path.

Returns:
path

dir

public java.lang.String dir()
Returns the directory.

Returns:
chopped filename

children

public IO[] children()
Returns the children of a document.

Returns:
chopped filename

write

public void write(byte[] c)
           throws java.io.IOException
Writes the specified file contents.

Parameters:
c - contents
Throws:
java.io.IOException - I/O exception

delete

public boolean delete()
Chops the path and the XML suffix of the specified filename.

Returns:
chopped filename

eq

public final boolean eq(IO io)
Compares the filename of the specified IO reference.

Parameters:
io - io reference
Returns:
result of check

toString

public final java.lang.String toString()
Overrides:
toString in class java.lang.Object

valid

public static boolean valid(java.lang.String fn)
Checks if the specified filename is valid; allows only letters, digits and some special characters.

Parameters:
fn - filename
Returns:
result of check

url

public static final java.lang.String url(java.lang.String path)
Creates a URL from the specified path.

Parameters:
path - path to be converted
Returns:
URL

file

public static final java.lang.String file(java.lang.String url)
Creates a file path from the specified URL.

Parameters:
url - url to be converted
Returns:
file path