PSE 2000 Group 4

jobmatch.data
Class ProgrammingBDO

java.lang.Object
  |
  +--jobmatch.data.ProgrammingBDO
Direct Known Subclasses:
Programming

public class ProgrammingBDO
extends Object
implements Serializable

ProgrammingBDO contains the same set and get methods as the ProgrammingDO class. Business Object (BO) classes typically need these set and get methods. So by deriving a BO from a BDO, or by implementing a BO that contains a BDO, the developer of the BO is spared some work.

Version:
$Revision: 1.5 $
See Also:
Serialized Form

Field Summary
protected  ProgrammingDO DO
          The ProgrammingDO object upon which the set and get methods operate.
 
Constructor Summary
ProgrammingBDO()
          Constructor required by ProgrammingBDO.create methods.
ProgrammingBDO(ProgrammingDO DO)
          Constructor for use by classes derived from ProgrammingBDO.
 
Method Summary
 void addProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo)
          Add (set & commit) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
 void addProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo, jobmatch.data.DBTransaction tran)
          Add (set & commit) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
 void addProgrammingProfileBDO(ProgrammingProfileBDO rbdo)
          Add (set & commit) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
 void addProgrammingProfileBDO(ProgrammingProfileBDO rbdo, jobmatch.data.DBTransaction tran)
          Add (set & commit) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
protected  void afterAnySet()
           
protected  void beforeAnyGet()
          The developer of a Business Object that derives from this class can override the methods: beforeAnyGet beforeAnySet afterAnySet to handle any general assertions or cleanup needed for get and set methods.
protected  void beforeAnySet()
           
 void commit()
          Inserts/Updates the DO into its table.
 void commit(jobmatch.data.DBTransaction dbt)
          Inserts/Updates the DO into its table.
static ProgrammingBDO createExisting(ProgrammingDO DO)
          The createExisting method is used to create a ProgrammingBDO from a ProgrammingDO that was returned by the ProgrammingQuery class.
static ProgrammingBDO createVirgin()
          Like the class ProgrammingDO, this class acts as a factory.
 void delete()
          Deletes the DO from its table.
 void delete(jobmatch.data.DBTransaction dbt)
          Deletes the DO from its table.
static ProgrammingBDO[] getBDOarray()
          The getBDOarray method performs a database query to return an array of ProgrammingBDO objects representing all the rows in the Programming table.
 String getDescription()
          Get Description of the ProgrammingDO
 ProgrammingDO getDO()
          Note: This method is intended for use only by other BDO classes.
 String getHandle()
          The methods getHandle hasMatchingHandle are used by Presentation Objects that need to populate HTML select lists with ProgrammingBDO objects as options.
 ProgrammingCandidateBDO getProgrammingCandidateBDO()
          Get the single ProgrammingCandidateBDO object holding a ProgrammingCandidateDO object that refers to the DO held by this BDO.
 ProgrammingCandidateBDO[] getProgrammingCandidateBDOArray()
          Get array of ProgrammingCandidateBDO objects holding ProgrammingCandidateDO objects that refer to the DO held by this BDO.
 ProgrammingCandidateDO getProgrammingCandidateDO()
          Get the single ProgrammingCandidateDO object that refers to the DO held by this BDO.
 ProgrammingCandidateDO[] getProgrammingCandidateDOArray()
          Get array of ProgrammingCandidateDO objects that refer to the DO held by this BDO.
 ProgrammingProfileBDO getProgrammingProfileBDO()
          Get the single ProgrammingProfileBDO object holding a ProgrammingProfileDO object that refers to the DO held by this BDO.
 ProgrammingProfileBDO[] getProgrammingProfileBDOArray()
          Get array of ProgrammingProfileBDO objects holding ProgrammingProfileDO objects that refer to the DO held by this BDO.
 ProgrammingProfileDO getProgrammingProfileDO()
          Get the single ProgrammingProfileDO object that refers to the DO held by this BDO.
 ProgrammingProfileDO[] getProgrammingProfileDOArray()
          Get array of ProgrammingProfileDO objects that refer to the DO held by this BDO.
 boolean hasMatchingHandle(String handle)
           
protected  void modifyDO(jobmatch.data.DBTransaction dbt, boolean delete)
          Modifies the DO within its table.
 void removeProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo)
          Remove (delete) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
 void removeProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo, jobmatch.data.DBTransaction tran)
          Remove (delete) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
 void removeProgrammingProfileBDO(ProgrammingProfileBDO rbdo)
          Remove (delete) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
 void removeProgrammingProfileBDO(ProgrammingProfileBDO rbdo, jobmatch.data.DBTransaction tran)
          Remove (delete) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
 void setDescription(String Description)
          Set Description of the ProgrammingDO
 String toString()
          for debugging
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DO

protected ProgrammingDO DO
The ProgrammingDO object upon which the set and get methods operate. This member is protected so that classes derived from ProgrammingBDO can access the underlying Data Object.
Constructor Detail

ProgrammingBDO

public ProgrammingBDO(ProgrammingDO DO)
Constructor for use by classes derived from ProgrammingBDO. Example usage: class CustomerBO extends CustomerBDO { // a BDO class is commonly extended in order to implement: public void beforeAnySet() throws Exception { if ( CustomerDO should not be altered ) throw new ApplicationException( "ERROR" ); } public CustomerBO( CustomerDO DO ) { super( DO ); } } class SomePresentationLayerClass { public CustomerBO findCustomer( String name ) { CustomerQuery q = new CustomerQuery(); q.setQueryName( name ); CustomerDO DO = q.getNextDO(); // Here the CustomerBO ctor fires the CustomerBDO ctor. return new CustomerBO( DO ); } }

ProgrammingBDO

public ProgrammingBDO()
               throws Exception
Constructor required by ProgrammingBDO.create methods.
Method Detail

getDO

public ProgrammingDO getDO()
Note: This method is intended for use only by other BDO classes. Presentation Layer classes should (theoretically) always use the Business Layer (BDO) to create/access Data Layer (DO) objects. The overhead for using BDO objects is small (the BDO classes are fairly lightweight.)
Returns:
The DO object held by this BDO object.

createVirgin

public static ProgrammingBDO createVirgin()
                                   throws Exception
Like the class ProgrammingDO, this class acts as a factory. Business Object (BO) classes typically need these set and get methods. So by deriving a BO from a BDO, or by implementing a BO that contains one or more BDOs, the developer of the BO is spared some work.
Throws:
Exception - If an error occurs.

createExisting

public static ProgrammingBDO createExisting(ProgrammingDO DO)
The createExisting method is used to create a ProgrammingBDO from a ProgrammingDO that was returned by the ProgrammingQuery class.

getBDOarray

public static ProgrammingBDO[] getBDOarray()
                                    throws jobmatch.data.DataObjectException
The getBDOarray method performs a database query to return an array of ProgrammingBDO objects representing all the rows in the Programming table. This method is a minimal example of using a Query class. To restrict the set of objects returned, you could invoke query.setXxx(), where Xxx is an Attribute of ProgrammingDO which was marked as "Can be queried" in the DODS Attribute Editor.
Throws:
jobmatch.data.DataObjectException - If an object is not found in the database.

beforeAnyGet

protected void beforeAnyGet()
The developer of a Business Object that derives from this class can override the methods: beforeAnyGet beforeAnySet afterAnySet to handle any general assertions or cleanup needed for get and set methods.

beforeAnySet

protected void beforeAnySet()
                     throws Exception

afterAnySet

protected void afterAnySet()

getHandle

public String getHandle()
                 throws jobmatch.data.DatabaseManagerException
The methods getHandle hasMatchingHandle are used by Presentation Objects that need to populate HTML select lists with ProgrammingBDO objects as options. The getHandle() method is used to set the value for each option, and the hasMatchingHandle() methods are used to lookup the Data Object when the selection has been made. This ProgrammingBDO object holds a reference to a ProgrammingDO object. The id of this ProgrammingBDO is the id of its ProgrammingDO.
Returns:
id of this BDO as a string If an object id can't be allocated for this object.
Throws:
jobmatch.data.DatabaseManagerException - If a connection to the database cannot be established, etc.

hasMatchingHandle

public boolean hasMatchingHandle(String handle)
Parameters:
handle - String representation of the id for this BDO
Returns:
boolean True if the string version of the id of this DO matches passed handle
See Also:
getHandle

toString

public String toString()
for debugging
Overrides:
toString in class Object

getDescription

public String getDescription()
                      throws jobmatch.data.DataObjectException
Get Description of the ProgrammingDO
Returns:
Description of the ProgrammingDO
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

setDescription

public void setDescription(String Description)
                    throws jobmatch.data.DataObjectException
Set Description of the ProgrammingDO
Parameters:
Description - of the ProgrammingDO
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getProgrammingCandidateDOArray

public ProgrammingCandidateDO[] getProgrammingCandidateDOArray()
                                                        throws jobmatch.data.DataObjectException,
                                                               jobmatch.data.QueryException
Get array of ProgrammingCandidateDO objects that refer to the DO held by this BDO.
Returns:
array of ProgrammingCandidateDO objects.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getProgrammingCandidateDO

public ProgrammingCandidateDO getProgrammingCandidateDO()
                                                 throws jobmatch.data.DataObjectException,
                                                        jobmatch.data.NonUniqueQueryException,
                                                        jobmatch.data.QueryException
Get the single ProgrammingCandidateDO object that refers to the DO held by this BDO.
Returns:
ProgrammingCandidateDO object.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.
jobmatch.data.NonUniqueQueryException - If more than one ProgrammingCandidateDO object was found.

getProgrammingCandidateBDOArray

public ProgrammingCandidateBDO[] getProgrammingCandidateBDOArray()
                                                          throws jobmatch.data.DataObjectException,
                                                                 jobmatch.data.QueryException
Get array of ProgrammingCandidateBDO objects holding ProgrammingCandidateDO objects that refer to the DO held by this BDO.
Returns:
array of ProgrammingCandidateBDO objects.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getProgrammingCandidateBDO

public ProgrammingCandidateBDO getProgrammingCandidateBDO()
                                                   throws jobmatch.data.DataObjectException,
                                                          jobmatch.data.NonUniqueQueryException,
                                                          jobmatch.data.QueryException
Get the single ProgrammingCandidateBDO object holding a ProgrammingCandidateDO object that refers to the DO held by this BDO.
Returns:
ProgrammingCandidateBDO object.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.
jobmatch.data.NonUniqueQueryException - If more than one ProgrammingCandidateBDO object was found.

addProgrammingCandidateBDO

public void addProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo)
                                throws SQLException,
                                       jobmatch.data.DatabaseManagerException,
                                       jobmatch.data.DataObjectException,
                                       jobmatch.data.RefAssertionException,
                                       jobmatch.data.DBRowUpdateException,
                                       jobmatch.data.QueryException
Add (set & commit) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
Parameters:
rbdo - ProgrammingCandidateBDO to be set to point to this BDO and committed.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

addProgrammingCandidateBDO

public void addProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo,
                                       jobmatch.data.DBTransaction tran)
                                throws SQLException,
                                       jobmatch.data.DatabaseManagerException,
                                       jobmatch.data.DataObjectException,
                                       jobmatch.data.RefAssertionException,
                                       jobmatch.data.DBRowUpdateException,
                                       jobmatch.data.QueryException
Add (set & commit) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
Parameters:
rbdo - ProgrammingCandidateBDO to be set to point to this BDO and committed.
tran - The transaction to be used for the commit. If null, a new transaction is created.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

removeProgrammingCandidateBDO

public void removeProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo)
                                   throws SQLException,
                                          jobmatch.data.DatabaseManagerException,
                                          jobmatch.data.DataObjectException,
                                          jobmatch.data.RefAssertionException,
                                          jobmatch.data.DBRowUpdateException,
                                          jobmatch.data.QueryException
Remove (delete) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
Parameters:
r - ProgrammingCandidateBDO to be deleted.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

removeProgrammingCandidateBDO

public void removeProgrammingCandidateBDO(ProgrammingCandidateBDO rbdo,
                                          jobmatch.data.DBTransaction tran)
                                   throws SQLException,
                                          jobmatch.data.DatabaseManagerException,
                                          jobmatch.data.DataObjectException,
                                          jobmatch.data.RefAssertionException,
                                          jobmatch.data.DBRowUpdateException,
                                          jobmatch.data.QueryException
Remove (delete) a ProgrammingCandidateBDO object whose ProgrammingCandidateDO refers to the DO held by this BDO.
Parameters:
r - ProgrammingCandidateBDO to be deleted.
tran - The transaction to be used for the commit. If null, a new transaction is created.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

getProgrammingProfileDOArray

public ProgrammingProfileDO[] getProgrammingProfileDOArray()
                                                    throws jobmatch.data.DataObjectException,
                                                           jobmatch.data.QueryException
Get array of ProgrammingProfileDO objects that refer to the DO held by this BDO.
Returns:
array of ProgrammingProfileDO objects.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getProgrammingProfileDO

public ProgrammingProfileDO getProgrammingProfileDO()
                                             throws jobmatch.data.DataObjectException,
                                                    jobmatch.data.NonUniqueQueryException,
                                                    jobmatch.data.QueryException
Get the single ProgrammingProfileDO object that refers to the DO held by this BDO.
Returns:
ProgrammingProfileDO object.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.
jobmatch.data.NonUniqueQueryException - If more than one ProgrammingProfileDO object was found.

getProgrammingProfileBDOArray

public ProgrammingProfileBDO[] getProgrammingProfileBDOArray()
                                                      throws jobmatch.data.DataObjectException,
                                                             jobmatch.data.QueryException
Get array of ProgrammingProfileBDO objects holding ProgrammingProfileDO objects that refer to the DO held by this BDO.
Returns:
array of ProgrammingProfileBDO objects.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getProgrammingProfileBDO

public ProgrammingProfileBDO getProgrammingProfileBDO()
                                               throws jobmatch.data.DataObjectException,
                                                      jobmatch.data.NonUniqueQueryException,
                                                      jobmatch.data.QueryException
Get the single ProgrammingProfileBDO object holding a ProgrammingProfileDO object that refers to the DO held by this BDO.
Returns:
ProgrammingProfileBDO object.
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.
jobmatch.data.NonUniqueQueryException - If more than one ProgrammingProfileBDO object was found.

addProgrammingProfileBDO

public void addProgrammingProfileBDO(ProgrammingProfileBDO rbdo)
                              throws SQLException,
                                     jobmatch.data.DatabaseManagerException,
                                     jobmatch.data.DataObjectException,
                                     jobmatch.data.RefAssertionException,
                                     jobmatch.data.DBRowUpdateException,
                                     jobmatch.data.QueryException
Add (set & commit) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
Parameters:
rbdo - ProgrammingProfileBDO to be set to point to this BDO and committed.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

addProgrammingProfileBDO

public void addProgrammingProfileBDO(ProgrammingProfileBDO rbdo,
                                     jobmatch.data.DBTransaction tran)
                              throws SQLException,
                                     jobmatch.data.DatabaseManagerException,
                                     jobmatch.data.DataObjectException,
                                     jobmatch.data.RefAssertionException,
                                     jobmatch.data.DBRowUpdateException,
                                     jobmatch.data.QueryException
Add (set & commit) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
Parameters:
rbdo - ProgrammingProfileBDO to be set to point to this BDO and committed.
tran - The transaction to be used for the commit. If null, a new transaction is created.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

removeProgrammingProfileBDO

public void removeProgrammingProfileBDO(ProgrammingProfileBDO rbdo)
                                 throws SQLException,
                                        jobmatch.data.DatabaseManagerException,
                                        jobmatch.data.DataObjectException,
                                        jobmatch.data.RefAssertionException,
                                        jobmatch.data.DBRowUpdateException,
                                        jobmatch.data.QueryException
Remove (delete) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
Parameters:
r - ProgrammingProfileBDO to be deleted.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

removeProgrammingProfileBDO

public void removeProgrammingProfileBDO(ProgrammingProfileBDO rbdo,
                                        jobmatch.data.DBTransaction tran)
                                 throws SQLException,
                                        jobmatch.data.DatabaseManagerException,
                                        jobmatch.data.DataObjectException,
                                        jobmatch.data.RefAssertionException,
                                        jobmatch.data.DBRowUpdateException,
                                        jobmatch.data.QueryException
Remove (delete) a ProgrammingProfileBDO object whose ProgrammingProfileDO refers to the DO held by this BDO.
Parameters:
r - ProgrammingProfileBDO to be deleted.
tran - The transaction to be used for the commit. If null, a new transaction is created.
Throws:
jobmatch.data.DatabaseManagerException - if could not create a transaction
SQLException - if any SQL errors occur.
jobmatch.data.DataObjectException - If object is not found in the database.

commit

public void commit()
            throws SQLException,
                   jobmatch.data.DatabaseManagerException,
                   jobmatch.data.DataObjectException,
                   jobmatch.data.RefAssertionException,
                   jobmatch.data.DBRowUpdateException,
                   jobmatch.data.QueryException
Inserts/Updates the DO into its table.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if a Transaction can not be created.
jobmatch.data.RefAssertionException - thrown by okTo method.
SQLException - if any SQL errors occur.

commit

public void commit(jobmatch.data.DBTransaction dbt)
            throws SQLException,
                   jobmatch.data.DatabaseManagerException,
                   jobmatch.data.DataObjectException,
                   jobmatch.data.RefAssertionException,
                   jobmatch.data.DBRowUpdateException,
                   jobmatch.data.QueryException
Inserts/Updates the DO into its table. The transaction is likely provided by the commit() method of another BDO whose DO references this DO.
Parameters:
dbt - The transaction object to use for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if a Transaction can not be created.
jobmatch.data.RefAssertionException - thrown by okTo method.
SQLException - if any SQL errors occur.

delete

public void delete()
            throws SQLException,
                   jobmatch.data.DatabaseManagerException,
                   jobmatch.data.DataObjectException,
                   jobmatch.data.RefAssertionException,
                   jobmatch.data.DBRowUpdateException,
                   jobmatch.data.QueryException
Deletes the DO from its table.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if a Transaction can not be created.
jobmatch.data.RefAssertionException - thrown by okTo method.
SQLException - if any SQL errors occur.

delete

public void delete(jobmatch.data.DBTransaction dbt)
            throws SQLException,
                   jobmatch.data.DatabaseManagerException,
                   jobmatch.data.DataObjectException,
                   jobmatch.data.RefAssertionException,
                   jobmatch.data.DBRowUpdateException,
                   jobmatch.data.QueryException
Deletes the DO from its table. The transaction is likely provided by the delete() method of another BDO whose DO references this DO.
Parameters:
dbt - The transaction object to use for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if a Transaction can not be created.
jobmatch.data.RefAssertionException - thrown by okTo method.
SQLException - if any SQL errors occur.

modifyDO

protected void modifyDO(jobmatch.data.DBTransaction dbt,
                        boolean delete)
                 throws SQLException,
                        jobmatch.data.DatabaseManagerException,
                        jobmatch.data.DataObjectException,
                        jobmatch.data.RefAssertionException,
                        jobmatch.data.DBRowUpdateException,
                        jobmatch.data.QueryException
Modifies the DO within its table. Performs recursive commit/delete on referenced DOs; all operations occur within a single transaction to allow rollback in the event of error. Only the creator of the transaction releases it.
Parameters:
dbt - The transaction object to use for this operation.
delete - True if doing a delete, otherwise doing insert/update.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if a Transaction can not be created.
jobmatch.data.RefAssertionException - thrown by okTo method.
SQLException - if any SQL errors occur.

PSE 2000 Group 4