fedora.server.test
Class RowDeletion

java.lang.Object
  extended by fedora.server.test.RowDeletion

public class RowDeletion
extends java.lang.Object

Title: RowDeletion.java

Description: Program to delete Fedora test objects from the database.

Version:
$Id: RowDeletion.java 3966 2005-04-21 13:33:01Z rlw $
Author:
Paul Charlton

Constructor Summary
RowDeletion()
           
 
Method Summary
 void deleteBehaviorDefinitionRow(java.sql.Connection connection, java.lang.String bDefDBID)
          Deletes BehaviorDefinition database rows.
 void deleteBehaviorMechanismRow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes BehaviorMechanism database rows.
 void deleteDataStreamBindingMapRow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes dsBindMap database rows.
 void deleteDataStreamBindingRow(java.sql.Connection connection, java.lang.String doDBID)
          Deletes dsBind database rows.
 void deleteDataStreamBindingSpecRow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes dsBindSpec database rows.
 void deleteDataStreamMIMERow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes dsMIME database rows.
 void deleteDigitalObjectDissAssocRow(java.sql.Connection connection, java.lang.String doDBID)
          Deletes doDissAssoc database rows.
 void deleteDigitalObjectRow(java.sql.Connection connection, java.lang.String doDBID)
          Deletes DigitalObject database rows.
 void deleteDisseminatorRow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes Disseminator database rows.
 void deleteGen(java.sql.Connection connection, java.lang.String deletionStatement)
          General JDBC row deletion method.
 void deleteMechanismImplRow(java.sql.Connection connection, java.lang.String bMechDBID)
          Deletes mechImpl database rows.
 void deleteMethodRow(java.sql.Connection connection, java.lang.String bDefDBID)
          Deletes method database rows.
static void main(java.lang.String[] args)
           Used for unit testing and demonstration purposes.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RowDeletion

public RowDeletion()
Method Detail

deleteBehaviorDefinitionRow

public void deleteBehaviorDefinitionRow(java.sql.Connection connection,
                                        java.lang.String bDefDBID)
                                 throws java.sql.SQLException
Deletes BehaviorDefinition database rows.

Parameters:
connection - JDBC DBMS connection
bDefDBID - BehaviorDefinition DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteBehaviorMechanismRow

public void deleteBehaviorMechanismRow(java.sql.Connection connection,
                                       java.lang.String bMechDBID)
                                throws java.sql.SQLException
Deletes BehaviorMechanism database rows.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDataStreamBindingRow

public void deleteDataStreamBindingRow(java.sql.Connection connection,
                                       java.lang.String doDBID)
                                throws java.sql.SQLException
Deletes dsBind database rows.

Parameters:
connection - JDBC DBMS connection
doDBID - DigitalObject DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDataStreamBindingMapRow

public void deleteDataStreamBindingMapRow(java.sql.Connection connection,
                                          java.lang.String bMechDBID)
                                   throws java.sql.SQLException
Deletes dsBindMap database rows.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDataStreamBindingSpecRow

public void deleteDataStreamBindingSpecRow(java.sql.Connection connection,
                                           java.lang.String bMechDBID)
                                    throws java.sql.SQLException
Deletes dsBindSpec database rows.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDataStreamMIMERow

public void deleteDataStreamMIMERow(java.sql.Connection connection,
                                    java.lang.String bMechDBID)
                             throws java.sql.SQLException
Deletes dsMIME database rows. Note that this needs to be called before deleteDataStreamBindingSpecRow in order to get the set of dsBindKeyDbID values to delete with.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDigitalObjectRow

public void deleteDigitalObjectRow(java.sql.Connection connection,
                                   java.lang.String doDBID)
                            throws java.sql.SQLException
Deletes DigitalObject database rows.

Parameters:
connection - JDBC DBMS connection
doDBID - DigitalObject DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDigitalObjectDissAssocRow

public void deleteDigitalObjectDissAssocRow(java.sql.Connection connection,
                                            java.lang.String doDBID)
                                     throws java.sql.SQLException
Deletes doDissAssoc database rows.

Parameters:
connection - JDBC DBMS connection
doDBID - DigitalObject DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteDisseminatorRow

public void deleteDisseminatorRow(java.sql.Connection connection,
                                  java.lang.String bMechDBID)
                           throws java.sql.SQLException
Deletes Disseminator database rows. The way Disseminator rows are being deleted for the test case is different from how they were inserted. They are inserted by processing the Data Object. Here they are deleted by bMechDBID. Another way to delete would be to delete the Disseminator rows by gathering the Disseminator.dissDbID values from the doDissAssoc table and using these values for the deletes. Both ways work properly for the test case, but may cause problems with more general use. The problems for unrestricted general use: 1) delete by bMechDBID: Disseminator rows are deleted for all objects that refer to bMechDBID, not just for the related Data Object. 2) delete with dissDbIDs from doDissAssoc: this would remove Disseminator rows that are associated with a particular Data Object. However, it would also have the side effect of breaking any 'links' that other Data Objects would have that also used this dissDbID, bMechDbID combination.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteMechanismImplRow

public void deleteMechanismImplRow(java.sql.Connection connection,
                                   java.lang.String bMechDBID)
                            throws java.sql.SQLException
Deletes mechImpl database rows.

Parameters:
connection - JDBC DBMS connection
bMechDBID - BehaviorMechanism DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteMethodRow

public void deleteMethodRow(java.sql.Connection connection,
                            java.lang.String bDefDBID)
                     throws java.sql.SQLException
Deletes method database rows.

Parameters:
connection - JDBC DBMS connection
bDefDBID - BehaviorDefinition DBID
Throws:
java.sql.SQLException - JDBC, SQL error

deleteGen

public void deleteGen(java.sql.Connection connection,
                      java.lang.String deletionStatement)
               throws java.sql.SQLException
General JDBC row deletion method.

Parameters:
connection - JDBC DBMS connection
deletionStatement - SQL row deletion statement
Throws:
java.sql.SQLException - JDBC, SQL error

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception

Used for unit testing and demonstration purposes.

Parameters:
args - program arguments
Throws:
java.lang.Exception - exceptions that are thrown from called methods