/*
 * This class was automatically generated with 
 * <a href="http://www.castor.org">Castor 0.9.4.3</a>, using an XML
 * Schema.
 * $Id$
 */

package nz.co.cks.tms.xml;

  //---------------------------------/
 //- Imported classes and packages -/
//---------------------------------/

import java.io.Reader;
import java.io.Serializable;
import java.io.Writer;
import org.exolab.castor.xml.Marshaller;
import org.exolab.castor.xml.Unmarshaller;
import org.exolab.castor.xml.ValidationException;

/**
 * Class TransactionBlkType.
 * 
 * @version $Revision$ $Date$
 */
public abstract class TransactionBlkType implements java.io.Serializable {


      //--------------------------/
     //- Class/Member Variables -/
    //--------------------------/

    /**
     * Field _transactionAuth
     */
    private nz.co.cks.tms.xml.TransactionAuth _transactionAuth;

    /**
     * Field _transactionPurchase
     */
    private nz.co.cks.tms.xml.TransactionPurchase _transactionPurchase;

    /**
     * Field _transactionSettlement
     */
    private nz.co.cks.tms.xml.TransactionSettlement _transactionSettlement;


      //----------------/
     //- Constructors -/
    //----------------/

    public TransactionBlkType() {
        super();
    } //-- nz.co.cks.tms.xml.TransactionBlkType()


      //-----------/
     //- Methods -/
    //-----------/

    /**
     * Method getTransactionAuthReturns the value of field
     * 'transactionAuth'.
     * 
     * @return the value of field 'transactionAuth'.
     */
    public nz.co.cks.tms.xml.TransactionAuth getTransactionAuth()
    {
        return this._transactionAuth;
    } //-- nz.co.cks.tms.xml.TransactionAuth getTransactionAuth() 

    /**
     * Method getTransactionPurchaseReturns the value of field
     * 'transactionPurchase'.
     * 
     * @return the value of field 'transactionPurchase'.
     */
    public nz.co.cks.tms.xml.TransactionPurchase getTransactionPurchase()
    {
        return this._transactionPurchase;
    } //-- nz.co.cks.tms.xml.TransactionPurchase getTransactionPurchase() 

    /**
     * Method getTransactionSettlementReturns the value of field
     * 'transactionSettlement'.
     * 
     * @return the value of field 'transactionSettlement'.
     */
    public nz.co.cks.tms.xml.TransactionSettlement getTransactionSettlement()
    {
        return this._transactionSettlement;
    } //-- nz.co.cks.tms.xml.TransactionSettlement getTransactionSettlement() 

    /**
     * Method isValid
     */
    public boolean isValid()
    {
        try {
            validate();
        }
        catch (org.exolab.castor.xml.ValidationException vex) {
            return false;
        }
        return true;
    } //-- boolean isValid() 

    /**
     * Method setTransactionAuthSets the value of field
     * 'transactionAuth'.
     * 
     * @param transactionAuth the value of field 'transactionAuth'.
     */
    public void setTransactionAuth(nz.co.cks.tms.xml.TransactionAuth transactionAuth)
    {
        this._transactionAuth = transactionAuth;
    } //-- void setTransactionAuth(nz.co.cks.tms.xml.TransactionAuth) 

    /**
     * Method setTransactionPurchaseSets the value of field
     * 'transactionPurchase'.
     * 
     * @param transactionPurchase the value of field
     * 'transactionPurchase'.
     */
    public void setTransactionPurchase(nz.co.cks.tms.xml.TransactionPurchase transactionPurchase)
    {
        this._transactionPurchase = transactionPurchase;
    } //-- void setTransactionPurchase(nz.co.cks.tms.xml.TransactionPurchase) 

    /**
     * Method setTransactionSettlementSets the value of field
     * 'transactionSettlement'.
     * 
     * @param transactionSettlement the value of field
     * 'transactionSettlement'.
     */
    public void setTransactionSettlement(nz.co.cks.tms.xml.TransactionSettlement transactionSettlement)
    {
        this._transactionSettlement = transactionSettlement;
    } //-- void setTransactionSettlement(nz.co.cks.tms.xml.TransactionSettlement) 

    /**
     * Method validate
     */
    public void validate()
        throws org.exolab.castor.xml.ValidationException
    {
        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
        validator.validate(this);
    } //-- void validate() 

}
