FileDocCategorySizeDatePackage
ReservationBean.javaAPI DocExample6777Sun Mar 03 16:56:52 GMT 2002com.titan.reservation

ReservationBean

public abstract class ReservationBean extends Object implements javax.ejb.EntityBean

Fields Summary
Constructors Summary
Methods Summary
public voidejbActivate()

public java.lang.ObjectejbCreate(CruiseLocal cruise, java.util.Collection customers)

		System.out.println("ReservationBean::ejbCreate");
         setId(getNextUniqueKey());
        return null;
    
public java.lang.IntegerejbCreate(CustomerRemote customer, CruiseLocal cruise, CabinLocal cabin, double price, java.sql.Date dateBooked)

		System.out.println("ReservationBean::ejbCreate");
        setAmountPaid(price);
		setDate(dateBooked);
		return null;
    
public voidejbLoad()

public voidejbPassivate()

public voidejbPostCreate(CruiseLocal cruise, java.util.Collection customers)

		System.out.println("ReservationBean::ejbPostCreate");
		setCruise(cruise);
 		Collection myCustomers = this.getCustomers();
        if ( ( myCustomers != null) && (customers != null ))
		{
            myCustomers.addAll(customers);
        }
        else if ( (myCustomers == null ) && ( customers != null ))
        {
            setCustomers((Set)customers);
        }
    
public voidejbPostCreate(CustomerRemote customer, CruiseLocal cruise, CabinLocal cabin, double price, java.sql.Date dateBooked)

        
 		System.out.println("ReservationBean::ejbPostCreate");
        setCruise(cruise);
		// Our bean has many cabins, use the cmr set method here..
		Set cabins = new HashSet();
		cabins.add(cabin);
		this.setCabins(cabins);
        try {
            Integer primKey = (Integer)customer.getPrimaryKey();
            javax.naming.Context jndiContext = new InitialContext();
            CustomerHomeLocal home = (CustomerHomeLocal)
                jndiContext.lookup("java:comp/env/ejb/CustomerHomeLocal");  // get local interface
            CustomerLocal custL = home.findByPrimaryKey(primKey);
			// Our bean has many customers, use the cmr set method here..
			Set customers = new HashSet();
			customers.add(custL);
			this.setCustomers(customers);
        } catch (RemoteException re) {
            throw new CreateException("Invalid Customer - Bad Remote Reference");
        } catch (FinderException fe) {
            throw new CreateException("Invalid Customer - Unable to Find Local Reference");
        } catch (NamingException ne) {
            throw new CreateException("Invalid Customer - Unable to find CustomerHomeLocal Reference");
        }
    
public voidejbRemove()

public voidejbStore()

public abstract doublegetAmountPaid()

public abstract java.util.SetgetCabins()

public abstract CruiseLocalgetCruise()

public abstract java.util.SetgetCustomers()

public abstract java.sql.DategetDate()

public abstract java.lang.IntegergetId()

private java.lang.IntegergetNextUniqueKey()

                Connection conn = null;
                Statement stmt = null;
                Statement stmt2 = null;
                ResultSet rs = null;
                boolean rowspresent = false;
                String jdbcClass = "COM.cloudscape.core.RmiJdbcDriver";
                String jdbcURL	 = "jdbc:cloudscape:rmi:TitanDB";
                String user		 = "scott";
                String password	 = "tiger";
                int sequenceID = 0;
                Integer myId = null;

                try
                {

                    InitialContext aContext = new InitialContext();
                    javax.sql.DataSource aDatasource = (javax.sql.DataSource)aContext.lookup("jdbc/TitanUID");
                    conn = aDatasource.getConnection();
                    System.out.println("Obtained a database connection to Cloudscape");

                    stmt = conn.createStatement();
                    StringBuffer aString = new StringBuffer();
                    aString.append("select ").append("\"").append("CurrentValue");
                    aString.append("\"").append(" from ").append("\"").append("SequenceTable");
                    aString.append("\"").append(" where").append("\"").append("SequenceName");
                    aString.append("\"").append("like").append("'Reservation'"); //.append(" for Update");
                    System.out.println(aString);
                    rs = stmt.executeQuery(aString.toString());
                    if (rs != null)
                    {
                        while (rs.next())
                        {
                            sequenceID =rs.getInt(1);
                        }
                    }

                    myId = new Integer(sequenceID);
                    sequenceID++;
                    stmt2 = conn.createStatement();
                    StringBuffer aString2 = new StringBuffer("update \"SequenceTable\" set \"CurrentValue\"="+sequenceID+" where \"SequenceName\"='Reservation'");
                    System.out.println(aString2);
                    stmt2.execute(aString2.toString());
                }
                catch( Exception ex)
                {
                    ex.printStackTrace();
                }
                 finally
                {
                    try
                    {
                        stmt.close();
                        stmt2.close();
                        conn.close();
                    }
                     catch( SQLException ex)
                    {
                     ex.printStackTrace();
                    }
                }
                return myId;
            
public abstract voidsetAmountPaid(double amount)

public abstract voidsetCabins(java.util.Set cabins)

public abstract voidsetCruise(CruiseLocal cruise)

public abstract voidsetCustomers(java.util.Set customers)

public abstract voidsetDate(java.sql.Date date)

public voidsetEntityContext(javax.ejb.EntityContext ec)

public abstract voidsetId(java.lang.Integer id)

public voidunsetEntityContext()