head	1.1;
access;
symbols
	HELM_PEER_PORT_BRANCH:1.1.0.2;
locks; strict;
comment	@# @;


1.1
date	2001.01.28.01.18.24;	author dlr;	state dead;
branches
	1.1.2.1;
next	;

1.1.2.1
date	2001.01.28.01.18.24;	author dlr;	state Exp;
branches;
next	1.1.2.2;

1.1.2.2
date	2001.02.01.17.49.45;	author dlr;	state Exp;
branches;
next	1.1.2.3;

1.1.2.3
date	2001.02.02.18.00.03;	author dlr;	state Exp;
branches;
next	1.1.2.4;

1.1.2.4
date	2001.02.02.19.09.49;	author dlr;	state Exp;
branches;
next	1.1.2.5;

1.1.2.5
date	2001.02.07.03.46.30;	author dlr;	state Exp;
branches;
next	1.1.2.6;

1.1.2.6
date	2001.02.07.21.18.02;	author dlr;	state Exp;
branches;
next	1.1.2.7;

1.1.2.7
date	2001.02.09.02.01.52;	author dlr;	state Exp;
branches;
next	1.1.2.8;

1.1.2.8
date	2001.02.09.23.25.42;	author dlr;	state Exp;
branches;
next	1.1.2.9;

1.1.2.9
date	2001.02.13.00.55.53;	author dlr;	state Exp;
branches;
next	1.1.2.10;

1.1.2.10
date	2001.02.13.03.03.05;	author dlr;	state Exp;
branches;
next	1.1.2.11;

1.1.2.11
date	2001.02.16.03.04.58;	author dlr;	state dead;
branches;
next	;


desc
@@


1.1
log
@file BaseInvitationPeer.java was initially added on branch HELM_PEER_PORT_BRANCH.
@
text
@@


1.1.2.1
log
@Classes ported to the Turbine Peer system. -dlr and leonardr
@
text
@a0 313
package org.tigris.helm.om.peer;

// JDK classes
import java.util.*;

// Village classes
import com.workingdogs.village.*;

// Turbine classes
import org.apache.turbine.om.peer.*;
import org.apache.turbine.util.*;
import org.apache.turbine.util.db.*;
import org.apache.turbine.util.db.map.*;
import org.apache.turbine.util.db.pool.DBConnection;

import org.tigris.helm.om.Invitation;

// Local classes
import org.tigris.helm.om.map.*;
import org.tigris.helm.om.*;

/** This class was autogenerated by GenerateMapBuilder on: Fri Jan 26 19:21:34 PST 2001 */
public class BaseInvitationPeer extends BasePeer
{
    /** the mapbuilder for this class */
    private static final InvitationMapBuilder mapBuilder = 
        (InvitationMapBuilder)getMapBuilder(InvitationMapBuilder.CLASS_NAME);

    /** the table name for this class */
    public static final String TABLE_NAME = mapBuilder.getTable();

    /** the column name for the INVITATION_ID field */
    public static final String INVITATION_ID = mapBuilder.getInvitation_InvitationId();
    /** the column name for the TICKET field */
    public static final String TICKET = mapBuilder.getInvitation_Ticket();
    /** the column name for the PROJECT_ID field */
    public static final String PROJECT_ID = mapBuilder.getInvitation_ProjectId();
    /** the column name for the INVITATION_DATE field */
    public static final String INVITATION_DATE = mapBuilder.getInvitation_InvitationDate();

    /** number of columns for this peer */
    public static final int numColumns =  4;;

    /** Method to do inserts */
    public static Object doInsert( Criteria criteria ) throws Exception
    {
        criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
                                                                     return BasePeer.doInsert( criteria );
    }

    /** 
     * Method to do inserts.  This method is to be used during a transaction,
     * otherwise use the doInsert(Criteria) method.  It will take care of 
     * the connection details internally. 
     */
    public static Object doInsert( Criteria criteria, DBConnection dbCon ) throws Exception
    {
        criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
                                                                     return BasePeer.doInsert( criteria, dbCon );
    }

    /** Add all the columns needed to create a new object */
    public static void addSelectColumns (Criteria criteria) throws Exception
    {
            criteria.addSelectColumn( INVITATION_ID );
            criteria.addSelectColumn( TICKET );
            criteria.addSelectColumn( PROJECT_ID );
            criteria.addSelectColumn( INVITATION_DATE );
        }


    /** Create a new object of type cls from a resultset row starting
      * from a specified offset.  This is done so that you can select
      * other rows than just those needed for this object.  You may
      * for example want to create two objects from the same row.
      */
    public static Invitation row2Object (Record row, int offset, Class cls ) throws Exception
    {
        Invitation obj = (Invitation)cls.newInstance();
                                        obj.setInvitationId(row.getValue(offset+0).asInt());
                                            obj.setTicket(row.getValue(offset+1).asString());
                                            obj.setProjectId(row.getValue(offset+2).asInt());
                                            obj.setInvitationDate(row.getValue(offset+3).asDate());
                                        obj.setModified(false);
                obj.setNew(false);
        return obj;
    }

    /** Method to do selects */
    public static Vector doSelect( Criteria criteria ) throws Exception
    {
        criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
        return doSelect (criteria,"org.tigris.helm.om.Invitation", null);
    }

    /** 
     * Method to do selects.  This method is to be used during a transaction,
     * otherwise use the doSelect(Criteria) method.  It will take care of 
     * the connection details internally. 
     */
    public static Vector doSelect( Criteria criteria, DBConnection dbCon ) throws Exception
    {
        criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
        return doSelect (criteria,"org.tigris.helm.om.Invitation", dbCon);
    }

    /** Method to do selects. The returned vector will have object
      * of className
      */
    public static Vector doSelect( Criteria criteria, String className, DBConnection dbCon) throws Exception
    {
        addSelectColumns ( criteria );

                                                             
        // BasePeer returns a Vector of Value (Village) arrays.  The array
        // order follows the order columns were placed in the Select clause.
        Vector rows = null;
        if (dbCon == null)
        {
            rows = BasePeer.doSelect(criteria);
        }
        else
        {
            rows = BasePeer.doSelect(criteria, dbCon);
        }
        Vector results = new Vector();

        // populate the object(s)
        for ( int i=0; i<rows.size(); i++ )
        {
            Record row = (Record)rows.elementAt(i);
            results.add (row2Object (row,1,Class.forName (className)));
         }
         return results;
    }

    /**
     * Method to do updates. 
     *
     * @@param Criteria object containing data that is used to create the UPDATE statement.
     */
    public static void doUpdate(Criteria criteria) throws Exception
    {
        criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
        Criteria selectCriteria = new Criteria(2);
                                selectCriteria.put( INVITATION_ID, criteria.remove(INVITATION_ID) );
                                                                                            BasePeer.doUpdate( selectCriteria, criteria );
    }

    /** 
     * Method to do updates.  This method is to be used during a transaction,
     * otherwise use the doUpdate(Criteria) method.  It will take care of 
     * the connection details internally. 
     *
     * @@param Criteria object containing data that is used to create the UPDATE statement.
     */
    public static void doUpdate(Criteria criteria, DBConnection dbCon) throws Exception
    {
         criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
         Criteria selectCriteria = new Criteria(2);
                                selectCriteria.put( INVITATION_ID, criteria.remove(INVITATION_ID) );
                                                                                            BasePeer.doUpdate( selectCriteria, criteria, dbCon );
     }

    /** 
     * Method to do deletes.
     *
     * @@param Criteria object containing data that is used DELETE from database.
     */
     public static void doDelete(Criteria criteria) throws Exception
     {
         criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
                                                                      BasePeer.doDelete ( criteria );
     }

    /** 
     * Method to do deletes.  This method is to be used during a transaction,
     * otherwise use the doInsert(Criteria) method.  It will take care of 
     * the connection details internally. 
     *
     * @@param Criteria object containing data that is used DELETE from database.
     */
     public static void doDelete(Criteria criteria, DBConnection dbCon) throws Exception
     {
         criteria.setDbName(getMapBuilder().getDatabaseMap().getName());
                                                                      BasePeer.doDelete ( criteria, dbCon );
     }

    /** Method to do inserts */
    public static void doInsert( Invitation obj ) throws Exception
    {
                obj.setPrimaryKey(doInsert(buildCriteria(obj)));
                obj.setNew(false);
    }

    /**
     * @@param obj the data object to update in the database.
     */
    public static void doUpdate(Invitation obj) throws Exception
    {
        doUpdate(buildCriteria(obj));
    }
    /**
     * @@param obj the data object to delete in the database.
     */
    public static void doDelete(Invitation obj) throws Exception
    {
        doDelete(buildCriteria(obj));
    }

    /** 
     * Method to do inserts.  This method is to be used during a transaction,
     * otherwise use the doInsert(Invitation) method.  It will take 
     * care of the connection details internally. 
     *
     * @@param obj the data object to insert into the database.
     */
    public static void doInsert( Invitation obj, DBConnection dbCon) throws Exception
    {
                obj.setPrimaryKey(doInsert(buildCriteria(obj), dbCon));
                obj.setNew(false);
    }

    /**
     * Method to do update.  This method is to be used during a transaction,
     * otherwise use the doUpdate(Invitation) method.  It will take 
     * care of the connection details internally. 
     *
     * @@param obj the data object to update in the database.
     */
    public static void doUpdate(Invitation obj, DBConnection dbCon) throws Exception
    {
        doUpdate(buildCriteria(obj), dbCon);
    }
    /**
     * Method to delete.  This method is to be used during a transaction,
     * otherwise use the doDelete(Invitation) method.  It will take 
     * care of the connection details internally. 
     *
     * @@param obj the data object to delete in the database.
     */
    public static void doDelete(Invitation obj, DBConnection dbCon) throws Exception
    {
        doDelete(buildCriteria(obj), dbCon);
    }

    /** Build a Criteria object from the data object for this peer */
    public static Criteria buildCriteria( Invitation obj )
    {
        Criteria criteria = new Criteria();
                            if ( !obj.isNew() )
	                criteria.add( INVITATION_ID, obj.getInvitationId() );
                                criteria.add( TICKET, obj.getTicket() );
                                criteria.add( PROJECT_ID, obj.getProjectId() );
                                criteria.add( INVITATION_DATE, obj.getInvitationDate() );
                return criteria;
    }

    /** 
     * Retrieve a single object by pk where multiple PK's are separated
     * by colons
     *
     * @@param int invitation_id
     */
    public static Invitation retrieveById(Object pkid) 
        throws Exception
    {
        StringTokenizer stok = new StringTokenizer((String)pkid, ":");
        if ( stok.countTokens() < 1 )
        {   
            throw new TurbineException(
                "id tokens did not match number of primary keys" );
        }
           int invitation_id = Integer.parseInt(stok.nextToken());;

       return retrieveByPK(
             invitation_id
              );
    }

    /** 
     * Retrieve a single object by pk
     *
     * @@param int invitation_id
     */
    public static Invitation retrieveByPK(
                      int invitation_id
                                                                 ) throws Exception
    {
        Criteria criteria = new Criteria();
                       if( invitation_id > 0 )
                  criteria.add( BaseInvitationPeer.INVITATION_ID, invitation_id );
                                            Vector InvitationVector = doSelect(criteria);
        if (InvitationVector.size() != 1)
        {
            throw new Exception("Failed to select one and only one row.");
        }
        else
        {
            return (Invitation) InvitationVector.firstElement();
        }
    }


}








@


1.1.2.2
log
@Mark these base peer classes as 'abstract class', rather than 'public class' to better note that their extensions should be used.
@
text
@d23 1
a23 1
abstract class BaseInvitationPeer extends BasePeer
@


1.1.2.3
log
@Regenerated BasePeer extensions.
@
text
@a4 1
import java.math.*;
d22 1
a22 1
/** This class was autogenerated by GenerateMapBuilder on: Fri Feb 02 09:53:57 PST 2001 */
d47 1
a47 1
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d58 1
a58 1
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d92 1
a92 1
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d103 1
a103 1
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d144 1
a144 1
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d159 1
a159 1
         criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d172 1
a172 1
         criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d185 1
a185 1
         criteria.setDbName(mapBuilder.getDatabaseMap().getName());
d292 1
a292 1
                  criteria.add( InvitationPeer.INVITATION_ID, invitation_id );
@


1.1.2.4
log
@Regenerated BasePeer extensions.
@
text
@d23 1
a23 1
/** This class was autogenerated by GenerateMapBuilder on: Fri Feb 02 11:12:25 PST 2001 */
@


1.1.2.5
log
@Latest Torque generated code (simple object model).
@
text
@d23 2
a24 2
/** This class was autogenerated by GenerateMapBuilder on: Tue Feb 06 19:46:40 PST 2001 */
public abstract class BaseInvitationPeer extends BasePeer
d146 1
a146 2
        Criteria selectCriteria = new
            Criteria(mapBuilder.getDatabaseMap().getName(), 2);
d160 2
a161 3
        criteria.setDbName(mapBuilder.getDatabaseMap().getName());
        Criteria selectCriteria = new
            Criteria(mapBuilder.getDatabaseMap().getName(), 2);
@


1.1.2.6
log
@Newest generated code (complex model this time).  Removed getUsers from Domain to side step decl conflict.
@
text
@d23 1
a23 1
/** This class was autogenerated by GenerateMapBuilder on: Wed Feb 07 12:45:09 PST 2001 */
a307 71
     
        
                       
     
          


   /**
    * selects a collection of Invitation objects pre-filled with their
    * Project objects.
    */
    public static Vector doSelectJoinProject(Criteria c)
        throws Exception
    {
         c.setDbName(mapBuilder.getDatabaseMap().getName());

        addSelectColumns(c);
        int offset = numColumns + 1;
        ProjectPeer.addSelectColumns(c);

                                                                     
        Vector rows = BasePeer.doSelect(c);
        Vector results = new Vector();

        for (int i=0; i<rows.size(); i++)
        {
            Invitation obj1 = 
                row2Object((com.workingdogs.village.Record)rows.elementAt(i),
                            1, Class.forName("org.tigris.helm.om.Invitation") );
            Project obj2 = ProjectPeer
                .row2Object((com.workingdogs.village.Record)rows.elementAt(i),
                            offset, Class.forName("org.tigris.helm.om.Project") );
            
            boolean newObject = true;
            for (int j=0; j<results.size(); j++)
            {
                Invitation temp_obj1 = (Invitation)results.elementAt(j);
                Project temp_obj2 = temp_obj1.getProject();
                if ( temp_obj2.getPrimaryKey().equals(obj2.getPrimaryKey() ) )
                {
                    newObject = false;
                    temp_obj2.addInvitations(obj1);
                    break;
                }
            }
            if (newObject)
            {
                obj2.initInvitations();
                obj2.addInvitations(obj1);
            }
            results.add(obj1);

        }

        return results;
    }
    

  


      
    /** 
     * Retrieve objects by fk
     *
     * @@param int project_id
     */
//    public static Vector retrieveByProjectId(int project_id)
//    {
        
    
@


1.1.2.7
log
@Torque autogen files.
@
text
@d23 1
a23 6
/**
  * This class was autogenerated by Torque on:
  *
  * [Thu Feb 08 17:56:55 PST 2001]
  *
  */
@


1.1.2.8
log
@New Torque-generated classes.  NewsItem replaces ProjectNews.
@
text
@d26 1
a26 1
  * [Fri Feb 09 15:29:27 PST 2001]
@


1.1.2.9
log
@New Torque-generated classes.
@
text
@d26 1
a26 1
  * [Mon Feb 12 16:46:43 PST 2001]
d48 1
a48 6
    public static final int numColumns =  4;

    /** A class that can be returned by this peer. */
    protected static final String CLASSNAME_DEFAULT = 
        "org.tigris.helm.om.Invitation";

d78 13
a90 18
    /** 
     * Create a new object of type cls from a resultset row starting
     * from a specified offset.  This is done so that you can select
     * other rows than just those needed for this object.  You may
     * for example want to create two objects from the same row.
     */
    public static Invitation row2Object (Record row, 
                                              int offset, 
                                              String cls ) 
        throws Exception
    {
        Invitation obj = 
            (Invitation)Class.forName(cls).newInstance();
                                                        obj.setInvitationId(row.getValue(offset+0).asInt());
                                                                            obj.setTicket(row.getValue(offset+1).asString());
                                                                            obj.setProjectId(row.getValue(offset+2).asInt());
                                                                            obj.setInvitationDate(row.getValue(offset+3).asDate());
                                                        obj.setModified(false);
d98 2
a99 10
        return populateObjects( doSelectVillageRecords(criteria) ); 
    }


    /** Method to do selects within a transaction */
    public static Vector doSelect( Criteria criteria, 
                                   DBConnection dbCon ) 
        throws Exception
    {
        return populateObjects( doSelectVillageRecords(criteria, dbCon) ); 
d103 3
a105 2
     * Grabs the raw Village records to be formed into objects.
     * This method handles connections internally 
d107 1
a107 2
    public static Vector doSelectVillageRecords( Criteria criteria ) 
        throws Exception
d110 1
a110 9
        if (criteria.getSelectColumns().size() == 0)
        {
            addSelectColumns ( criteria );
        }

                                                             
        // BasePeer returns a Vector of Value (Village) arrays.  The array
        // order follows the order columns were placed in the Select clause.
        return BasePeer.doSelect(criteria);
d113 4
a116 8

    /** 
     * Grabs the raw Village records to be formed into objects.
     * This method should be used for transactions 
     */
    public static Vector doSelectVillageRecords( Criteria criteria, 
                                                 DBConnection dbCon ) 
        throws Exception
d123 10
a132 11
        return BasePeer.doSelect(criteria, dbCon);
    }

    /** 
     * The returned vector will contain objects of the default type or
     * objects that inherit from the default.
     */
    private static Vector populateObjects(Vector records) 
        throws Exception
    {
        Vector results = new Vector(records.size());
d135 1
a135 1
        for ( int i=0; i<records.size(); i++ )
d137 4
a140 5
            Record row = (Record)records.elementAt(i);

            results.add(row2Object( row,1, CLASSNAME_DEFAULT ));
        }
        return results;
d339 3
a341 28
            Record row = (Record)rows.elementAt(i);

            Invitation obj1 = row2Object( row,1, CLASSNAME_DEFAULT );


                        String className = null;
                                String classKey = row.getValue(ProjectPeer.TYPE)
                .asString();
                                        if (ProjectPeer.CLASSKEY_GROUP.equals(classKey))
                        {
                className = ProjectPeer.CLASSNAME_GROUP;
            }
                                            else if (ProjectPeer.CLASSKEY_CATEGORY.equals(classKey))
                        {
                className = ProjectPeer.CLASSNAME_CATEGORY;
            }
                                            else if (ProjectPeer.CLASSKEY_DOMAIN.equals(classKey))
                        {
                className = ProjectPeer.CLASSNAME_DOMAIN;
            }
                                            else if (ProjectPeer.CLASSKEY_HOST.equals(classKey))
                        {
                className = ProjectPeer.CLASSNAME_HOST;
            }
                                else
            {
                className = CLASSNAME_DEFAULT;
            }
d343 3
a345 2
                .row2Object(row, offset, className);
                
d374 10
a383 2


@


1.1.2.10
log
@Latest Torque-generated code to handle inheritance based on values in a database field column.
@
text
@d26 1
a26 1
  * [Mon Feb 12 19:03:25 PST 2001]
d96 5
a100 5
                                            obj.setInvitationId(row.getValue(offset+0).asInt());
                                                    obj.setTicket(row.getValue(offset+1).asString());
                                                    obj.setProjectId(row.getValue(offset+2).asInt());
                                                    obj.setInvitationDate(row.getValue(offset+3).asDate());
                                            obj.setModified(false);
a101 1

d218 1
a218 1
     * otherwise use the doDelete(Criteria) method.  It will take care of 
d292 1
a292 1
    	                criteria.add( INVITATION_ID, obj.getInvitationId() );
@


1.1.2.11
log
@Deprecated by Torque modificaitons.
@
text
@@


