Package com.mckoi.database

## Class TableDescriptions

- java.lang.Object
- - com.mckoi.database.TableDescriptions

    public final class TableDescriptions
    extends java.lang.Object

An object that is a key part of Database. This object maintains a list of descriptions of all tables in the database. The list contains information about the columns in the table and any other misc table options.

Author:
  Tobias Downer

### Constructor Summary

Constructors
`TableDescriptions​(java.io.File database_path)` Constructs this object with the database in the given directory.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `exists()` Returns true if the table descriptions file exists.
`DataTableDef` `getDef​(java.lang.String table_name)` Returns the DataTableDef object for the table with the given name.
`java.lang.String[]` `getTableList()` Returns a list of table name's sorted in alphebetical order.
`void` `load()` Load the entire list of table descriptions for this database.
`void` `save()` Updates the table description file in the database.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### TableDescriptions

    public TableDescriptions​(java.io.File database_path)

Constructs this object with the database in the given directory.

### Method Detail

#### exists

    public boolean exists()

Returns true if the table descriptions file exists.

#### load

    public void load()
              throws java.io.IOException

Load the entire list of table descriptions for this database.

Throws:
  `java.io.IOException`

#### save

    public void save()
              throws java.io.IOException

Updates the table description file in the database. The table description file describes every table in the database. It is loaded when the database is initialized and refreshed whenever a table alteration occurs or the database is shut down.

Throws:
  `java.io.IOException`

#### getTableList

    public java.lang.String[] getTableList()

Returns a list of table name's sorted in alphebetical order.

#### getDef

    public DataTableDef getDef​(java.lang.String table_name)

Returns the DataTableDef object for the table with the given name. The description must have been loaded before this method is called. Returns null if the table was not found.