Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.torque.map
Class DatabaseMap

    java.lang.Object
      org.apache.torque.map.DatabaseMap

All Implemented Interfaces:
  Serializable

    public class DatabaseMap

extends Object
implements Serializable

DatabaseMap is used to model a database.

Version:
  $Id: DatabaseMap.java 1375888 2012-08-22 03:51:00Z tfischer $
Author:
  John D. McNally, Daniel Rall, Greg Monroe
See Also:
  Serialized Form

Field Summary
`static String` | `INIT_CLASS_NAME_FORMAT` Format used to create create the class name for initializing a DB specific map
`static char` | `SCHEMA_SEPARATOR_CHAR` The character which separates the schema name from the table name.
`static char` | `STD_SEPARATOR_CHAR` The character used by most implementations as the separator between name elements.

Constructor Summary
`DatabaseMap(Database database)` Constructs a new DatabaseMap.

Method Summary
`TableMap` | `addTable(String tableName)` Add a new table to the database by name.
`boolean` | `containsTable(String name)` Does this database contain this specific table?
`boolean` | `containsTable(TableMap table)` Does this database contain this specific table?
`void` | `copyFrom(DatabaseMap databaseMap)` Copy all settings except the database from another database map.
`String` | `getOption(String key)` Returns the value of an option.
`Map<String,String>` | `getOptions()` Returns an unmodifiable map of all options.
`TableMap` | `getTable(String name)` Get a TableMap for the table by name.
`TableMap[]` | `getTables()` Get a TableMap[] of all of the tables in the database.
`void` | `initialize()` Fully populate this DatabaseMap with all the TablesMaps.
`protected String` | `javanameMethod(String schemaName)` Converts a database schema name to java object name.
`void` | `setIdTable(TableMap idTableMap)` Add a new TableMap to the database.
`void` | `setOption(String key, String value)` Sets an option.
`String` | `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### STD_SEPARATOR_CHAR

    public static final char STD_SEPARATOR_CHAR

  The character used by most implementations as the separator between name elements.

  See Also:
    Constant Field Values

### SCHEMA_SEPARATOR_CHAR

    public static final char SCHEMA_SEPARATOR_CHAR

  The character which separates the schema name from the table name.

  See Also:
    Constant Field Values

### INIT_CLASS_NAME_FORMAT

    public static final String INIT_CLASS_NAME_FORMAT

  Format used to create create the class name for initializing a DB specific map

  See Also:
    Constant Field Values

Constructor Detail

### DatabaseMap

    public DatabaseMap(Database database)

  Constructs a new DatabaseMap.

Method Detail

### containsTable

    public boolean containsTable(TableMap table)

  Does this database contain this specific table?

  Parameters:
    `table` - The TableMap representation of the table.
  Returns:
    True if the database contains the table.

### containsTable

    public boolean containsTable(String name)

  Does this database contain this specific table?

  Parameters:
    `name` - The String representation of the table.
  Returns:
    True if the database contains the table.

### getTable

    public TableMap getTable(String name)

  Get a TableMap for the table by name.

  Note that by default Torque uses lazy initialization to minimize memory usage and startup time. However, if an OM or PEER class has not called the table's MapBuilder class, it will not be here. See the optional initialize method if you need full OM Mapping.

  Parameters:
    `name` - Name of the table.
  Returns:
    A TableMap, null if the table was not found.

### getTables

    public TableMap[] getTables()

  Get a TableMap[] of all of the tables in the database.

  Note that by default Torque uses lazy initialization to minimize memory usage and startup time. However, if an OM or PEER class has not called the table's MapBuilder class, it will not be here. See the optional initialize method if you need full OM Mapping.

  Returns:
    A TableMap[].

### addTable

    public TableMap addTable(String tableName)

  Add a new table to the database by name. It creates an empty TableMap that you need to populate.

  Parameters:
    `tableName` - The name of the table.
  Returns:
    the new table map.

### setIdTable

    public void setIdTable(TableMap idTableMap)

  Add a new TableMap to the database.

  Parameters:
    `idTableMap` - The TableMap representation.

### getOptions

    public Map<String,String> getOptions()

  Returns an unmodifiable map of all options.

  Returns:
    A map containing all options, not null.

### setOption

    public void setOption(String key,
                          String value)

  Sets an option.

  Parameters:
    `key` - the key of the option
    `value` - the value of the option.

### getOption

    public String getOption(String key)

  Returns the value of an option.

  Parameters:
    `key` - the key of the option.
  Returns:
    the value of the option, or null if not set.

### initialize

    public void initialize()
                    throws TorqueException

  Fully populate this DatabaseMap with all the TablesMaps. This is only needed if the application needs to use the complete OM mapping information. Otherwise, the OM Mapping information will be populated as needed by OM and Peer classes. An example of how to initialize the map info from the application:

  `DatabaseMap dbMap = Torque.getDatabaseMap( dbName ); try { dbMap.initialize(); } catch ( TorqueException e ) { ... error handling }` Note that Torque database names are case sensitive and this DB map must be retrieved with the exact name used in the XML schema.

  This uses Java reflection methods to locate and run the init() method of a class generated in the org.apache.torque.linkage package with a name based on the XML Database name value, e.g. org.apache.torque.linkage.DefaultMapInit

  Some misconfiguration situations that could cause this method to fail are:

  The class(es) in the org.apache.torque.linkage package were not included with the other generated class files (e.g. the jar file creation process only included com.* and not org.* files).

  Throws:
    `TorqueException` - If an error is encountered locating and calling the init method.

### javanameMethod

    protected String javanameMethod(String schemaName)

  Converts a database schema name to java object name. Operates same as underscoreMethod but does not convert anything to lowercase. This must match the javaNameMethod in the JavaNameGenerator class in Generator code.

  Parameters:
    `schemaName` - name to be converted.
  Returns:
    converted name.

### copyFrom

    public void copyFrom(DatabaseMap databaseMap)

  Copy all settings except the database from another database map.

  Parameters:
    `databaseMap` - the database map to copy from, not null.

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2013 The Apache Software Foundation. All Rights Reserved.