PSE 2000 Group 4

jobmatch.data
Class SoftwareBDO

java.lang.Object
  |
  +--jobmatch.data.SoftwareBDO
Direct Known Subclasses:
Software

public class SoftwareBDO
extends Object
implements Serializable

SoftwareBDO contains the same set and get methods as the SoftwareDO 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  SoftwareDO DO
          The SoftwareDO object upon which the set and get methods operate.
 
Constructor Summary
SoftwareBDO()
          Constructor required by SoftwareBDO.create methods.
SoftwareBDO(SoftwareDO DO)
          Constructor for use by classes derived from SoftwareBDO.
 
Method Summary
 void addSoftwareCandidateBDO(SoftwareCandidateBDO rbdo)
          Add (set & commit) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
 void addSoftwareCandidateBDO(SoftwareCandidateBDO rbdo, jobmatch.data.DBTransaction tran)
          Add (set & commit) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
 void addSoftwareProfileBDO(SoftwareProfileBDO rbdo)
          Add (set & commit) a SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
 void addSoftwareProfileBDO(SoftwareProfileBDO rbdo, jobmatch.data.DBTransaction tran)
          Add (set & commit) a SoftwareProfileBDO object whose SoftwareProfileDO 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 SoftwareBDO createExisting(SoftwareDO DO)
          The createExisting method is used to create a SoftwareBDO from a SoftwareDO that was returned by the SoftwareQuery class.
static SoftwareBDO createVirgin()
          Like the class SoftwareDO, 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 SoftwareBDO[] getBDOarray()
          The getBDOarray method performs a database query to return an array of SoftwareBDO objects representing all the rows in the Software table.
 String getDescription()
          Get Description of the SoftwareDO
 SoftwareDO 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 SoftwareBDO objects as options.
 SoftwareCandidateBDO getSoftwareCandidateBDO()
          Get the single SoftwareCandidateBDO object holding a SoftwareCandidateDO object that refers to the DO held by this BDO.
 SoftwareCandidateBDO[] getSoftwareCandidateBDOArray()
          Get array of SoftwareCandidateBDO objects holding SoftwareCandidateDO objects that refer to the DO held by this BDO.
 SoftwareCandidateDO getSoftwareCandidateDO()
          Get the single SoftwareCandidateDO object that refers to the DO held by this BDO.
 SoftwareCandidateDO[] getSoftwareCandidateDOArray()
          Get array of SoftwareCandidateDO objects that refer to the DO held by this BDO.
 SoftwareProfileBDO getSoftwareProfileBDO()
          Get the single SoftwareProfileBDO object holding a SoftwareProfileDO object that refers to the DO held by this BDO.
 SoftwareProfileBDO[] getSoftwareProfileBDOArray()
          Get array of SoftwareProfileBDO objects holding SoftwareProfileDO objects that refer to the DO held by this BDO.
 SoftwareProfileDO getSoftwareProfileDO()
          Get the single SoftwareProfileDO object that refers to the DO held by this BDO.
 SoftwareProfileDO[] getSoftwareProfileDOArray()
          Get array of SoftwareProfileDO 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 removeSoftwareCandidateBDO(SoftwareCandidateBDO rbdo)
          Remove (delete) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
 void removeSoftwareCandidateBDO(SoftwareCandidateBDO rbdo, jobmatch.data.DBTransaction tran)
          Remove (delete) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
 void removeSoftwareProfileBDO(SoftwareProfileBDO rbdo)
          Remove (delete) a SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
 void removeSoftwareProfileBDO(SoftwareProfileBDO rbdo, jobmatch.data.DBTransaction tran)
          Remove (delete) a SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
 void setDescription(String Description)
          Set Description of the SoftwareDO
 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 SoftwareDO DO
The SoftwareDO object upon which the set and get methods operate. This member is protected so that classes derived from SoftwareBDO can access the underlying Data Object.
Constructor Detail

SoftwareBDO

public SoftwareBDO(SoftwareDO DO)
Constructor for use by classes derived from SoftwareBDO. 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 ); } }

SoftwareBDO

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

getDO

public SoftwareDO 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 SoftwareBDO createVirgin()
                                throws Exception
Like the class SoftwareDO, 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 SoftwareBDO createExisting(SoftwareDO DO)
The createExisting method is used to create a SoftwareBDO from a SoftwareDO that was returned by the SoftwareQuery class.

getBDOarray

public static SoftwareBDO[] getBDOarray()
                                 throws jobmatch.data.DataObjectException
The getBDOarray method performs a database query to return an array of SoftwareBDO objects representing all the rows in the Software 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 SoftwareDO 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 SoftwareBDO 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 SoftwareBDO object holds a reference to a SoftwareDO object. The id of this SoftwareBDO is the id of its SoftwareDO.
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 SoftwareDO
Returns:
Description of the SoftwareDO
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 SoftwareDO
Parameters:
Description - of the SoftwareDO
Throws:
jobmatch.data.DataObjectException - If the object is not found in the database.

getSoftwareCandidateDOArray

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

getSoftwareCandidateDO

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

getSoftwareCandidateBDOArray

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

getSoftwareCandidateBDO

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

addSoftwareCandidateBDO

public void addSoftwareCandidateBDO(SoftwareCandidateBDO rbdo)
                             throws SQLException,
                                    jobmatch.data.DatabaseManagerException,
                                    jobmatch.data.DataObjectException,
                                    jobmatch.data.RefAssertionException,
                                    jobmatch.data.DBRowUpdateException,
                                    jobmatch.data.QueryException
Add (set & commit) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
Parameters:
rbdo - SoftwareCandidateBDO 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.

addSoftwareCandidateBDO

public void addSoftwareCandidateBDO(SoftwareCandidateBDO 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 SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
Parameters:
rbdo - SoftwareCandidateBDO 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.

removeSoftwareCandidateBDO

public void removeSoftwareCandidateBDO(SoftwareCandidateBDO rbdo)
                                throws SQLException,
                                       jobmatch.data.DatabaseManagerException,
                                       jobmatch.data.DataObjectException,
                                       jobmatch.data.RefAssertionException,
                                       jobmatch.data.DBRowUpdateException,
                                       jobmatch.data.QueryException
Remove (delete) a SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
Parameters:
r - SoftwareCandidateBDO 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.

removeSoftwareCandidateBDO

public void removeSoftwareCandidateBDO(SoftwareCandidateBDO 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 SoftwareCandidateBDO object whose SoftwareCandidateDO refers to the DO held by this BDO.
Parameters:
r - SoftwareCandidateBDO 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.

getSoftwareProfileDOArray

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

getSoftwareProfileDO

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

getSoftwareProfileBDOArray

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

getSoftwareProfileBDO

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

addSoftwareProfileBDO

public void addSoftwareProfileBDO(SoftwareProfileBDO rbdo)
                           throws SQLException,
                                  jobmatch.data.DatabaseManagerException,
                                  jobmatch.data.DataObjectException,
                                  jobmatch.data.RefAssertionException,
                                  jobmatch.data.DBRowUpdateException,
                                  jobmatch.data.QueryException
Add (set & commit) a SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
Parameters:
rbdo - SoftwareProfileBDO 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.

addSoftwareProfileBDO

public void addSoftwareProfileBDO(SoftwareProfileBDO 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 SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
Parameters:
rbdo - SoftwareProfileBDO 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.

removeSoftwareProfileBDO

public void removeSoftwareProfileBDO(SoftwareProfileBDO rbdo)
                              throws SQLException,
                                     jobmatch.data.DatabaseManagerException,
                                     jobmatch.data.DataObjectException,
                                     jobmatch.data.RefAssertionException,
                                     jobmatch.data.DBRowUpdateException,
                                     jobmatch.data.QueryException
Remove (delete) a SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
Parameters:
r - SoftwareProfileBDO 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.

removeSoftwareProfileBDO

public void removeSoftwareProfileBDO(SoftwareProfileBDO 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 SoftwareProfileBDO object whose SoftwareProfileDO refers to the DO held by this BDO.
Parameters:
r - SoftwareProfileBDO 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