net.sf.dc.wf
Class WorkFlow

java.lang.Object
  extended bynet.sf.dc.wf.WorkFlow

public class WorkFlow
extends java.lang.Object

This is the layer between the UI and the database. Checks for data integrity and checks on bussiness rules are done here

Since:
1.3
Version:
0.5
Author:
Robert Jan van der Waals

Constructor Summary
WorkFlow()
           
 
Method Summary
 boolean checkUniqueness(DcObject o, boolean bUpdate)
          Checks if the object is unique
static java.util.Collection convertToDCObjects(java.sql.ResultSet result)
          Converts a resultset to a DataCrowObject Vector
 void deleteValues(DcObject o)
          Deletes the object.
 void displayResults(java.util.Collection objects, RequestCollection requestorObjects, boolean qryWasSuccess)
          Passes requests thru to the UI (MainFrame)
 void insertValues(DcObject o)
          Inserts new values.
static void restartDatabase()
          Restarts the database.
 void runQuery(java.lang.String sQuery, RequestCollection requestors)
          Runs a predefined query
 java.util.Collection runQueryDirect(DcObject o)
          Runs a query directly, bypassing the query queue
 java.util.Collection runQueryDirect(Query query)
          Does not put the query in a queue but executes it immediately.
 java.util.Collection runQueryDirect(java.lang.String sQuery)
          Does not put the query in a queue but executes it immediately.
 java.util.Collection runQueryDirect(java.lang.String sQuery, boolean catchErrors)
           
 java.sql.ResultSet runQueryDirectUnclosed(java.lang.String sQuery)
          Does not put the query in a queue but executes it immediately.
 void searchValues(DcObject o, QueryOptions queryOptions)
          Searches for values.
static void startDatabase()
          starts the database if not running
 void updateValues(DcObject o)
          Updates values.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WorkFlow

public WorkFlow()
Method Detail

startDatabase

public static void startDatabase()
starts the database if not running


restartDatabase

public static void restartDatabase()
Restarts the database. Old database will remain running to complete previous tasks !


runQuery

public void runQuery(java.lang.String sQuery,
                     RequestCollection requestors)
Runs a predefined query

Parameters:
sQuery - query statement
requestors - requests to the UI

searchValues

public void searchValues(DcObject o,
                         QueryOptions queryOptions)
Searches for values. The query is put in the query queue. The results are past to the caller by using the RequestorCollection

Parameters:
o - the object which is used as the condition

insertValues

public void insertValues(DcObject o)
Inserts new values. The query is put in the query queue. Actions are past to the caller by using the RequestorCollection

Parameters:
o - the object to be inserted

updateValues

public void updateValues(DcObject o)
Updates values. The query is put in the query queue. Actions are past to the caller by using the RequestorCollection

Parameters:
o - the object to be updated

deleteValues

public void deleteValues(DcObject o)
Deletes the object. The query is put in the query queue. Actions are past to the caller by using the RequestorCollection

Parameters:
o - the object to be updated

runQueryDirect

public java.util.Collection runQueryDirect(java.lang.String sQuery,
                                           boolean catchErrors)
                                    throws java.lang.Exception
Throws:
java.lang.Exception

runQueryDirect

public java.util.Collection runQueryDirect(DcObject o)
Runs a query directly, bypassing the query queue

Parameters:
o - Data Crow object

runQueryDirect

public java.util.Collection runQueryDirect(Query query)
Does not put the query in a queue but executes it immediately. Errors are returned to the caller (not thrown)


runQueryDirectUnclosed

public java.sql.ResultSet runQueryDirectUnclosed(java.lang.String sQuery)
                                          throws java.lang.Exception
Does not put the query in a queue but executes it immediately. Does not close the resultset!

Parameters:
sQuery - query statement
Throws:
java.lang.Exception

runQueryDirect

public java.util.Collection runQueryDirect(java.lang.String sQuery)
Does not put the query in a queue but executes it immediately.

Parameters:
sQuery - query statement

displayResults

public void displayResults(java.util.Collection objects,
                           RequestCollection requestorObjects,
                           boolean qryWasSuccess)
Passes requests thru to the UI (MainFrame)

Parameters:
requestorObjects - collection of requests

checkUniqueness

public boolean checkUniqueness(DcObject o,
                               boolean bUpdate)
Checks if the object is unique

Parameters:
o - object to be checked
bUpdate - specifies if the object exists already in the database or not

convertToDCObjects

public static java.util.Collection convertToDCObjects(java.sql.ResultSet result)
Converts a resultset to a DataCrowObject Vector

Parameters:
result - result set from a query