org.formaria.data
Class OptionalDataSource

java.lang.Object
  extended by org.formaria.data.DataSource
      extended by org.formaria.data.OptionalDataSource

public class OptionalDataSource
extends DataSource

An extended datasource for handling databses, services and routing

Copyright: Copyright Formaria Ltd. (c) 2003

$Revision: 2.15 $ License: see license.txt


Field Summary
protected  DataModelLoader modelLoader
           
 
Fields inherited from class org.formaria.data.DataSource
currentProject
 
Constructor Summary
OptionalDataSource(Project project)
           
 
Method Summary
static java.lang.String checkLocalHsqldb(java.lang.ClassLoader cl, java.lang.String dbDriver, java.lang.String dbUrl)
          Check for a local database url.
protected  java.lang.String checkLocalHsqldb(java.lang.String dbDriver, java.lang.String dbUrl)
          Check for a local database url.
 java.lang.String getModelXML(DataModel mdl)
          Output the model to a String and return it
 void loadDatabase(XmlElement source, DataModel model)
          Recursively load the model data
 void read(java.io.Reader r)
          Read a model from the Reader
 void registerDatabaseNode(XmlElement source)
          Register a database source element found within the datasets.xml file
 void registerDataSource(XmlElement source)
          Register the datasource files found within the datasets.xml file
 DataModelLoader setModelLoader()
          Gets the object being used to load the model node
 void setModelLoader(DataModelLoader rc)
          Sets the object that is used to construct data sources via relfection.
protected  void showVisualisation()
          If the ShowVisualiser property is set to true then show the visualiser for debugging
 
Methods inherited from class org.formaria.data.DataSource
loadTable, outputModel, outputModel, outputModel, read, readDataSource, setUseValueAsId, write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelLoader

protected DataModelLoader modelLoader
Constructor Detail

OptionalDataSource

public OptionalDataSource(Project project)
Parameters:
project - the owner project
Method Detail

setModelLoader

public DataModelLoader setModelLoader()
Gets the object being used to load the model node

Returns:
DataModelLoader object

setModelLoader

public void setModelLoader(DataModelLoader rc)
Sets the object that is used to construct data sources via relfection.

Parameters:
rc - the DataModelLoader object

showVisualisation

protected void showVisualisation()
If the ShowVisualiser property is set to true then show the visualiser for debugging


read

public void read(java.io.Reader r)
Read a model from the Reader

Overrides:
read in class DataSource
Parameters:
r - the Reader

registerDataSource

public void registerDataSource(XmlElement source)
Register the datasource files found within the datasets.xml file

Parameters:
source - The path to the discovered file

registerDatabaseNode

public void registerDatabaseNode(XmlElement source)
Register a database source element found within the datasets.xml file

Parameters:
source - The path to the database file

loadDatabase

public void loadDatabase(XmlElement source,
                         DataModel model)
Recursively load the model data

Parameters:
source - the source element
model - the model for the source element

checkLocalHsqldb

protected java.lang.String checkLocalHsqldb(java.lang.String dbDriver,
                                            java.lang.String dbUrl)
Check for a local database url. For hsqldb this extracts the db files to a local directory and returns the modiefied URL

Parameters:
dbDriver - the database drivr class
dbUrl - the database url

checkLocalHsqldb

public static java.lang.String checkLocalHsqldb(java.lang.ClassLoader cl,
                                                java.lang.String dbDriver,
                                                java.lang.String dbUrl)
Check for a local database url. For hsqldb this extracts the db files to a local directory and returns the modiefied URL

Parameters:
cl - teh classloader used to try and find the database files
dbDriver - the database drivr class
dbUrl - the database url

getModelXML

public java.lang.String getModelXML(DataModel mdl)
Output the model to a String and return it

Parameters:
mdl - the model to bt output
Returns:
the String representation of the model