| CarBean.java |
/*
* JBoss, the OpenSource EJB server
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package org.jboss.test.foedeployer.ejb.ql;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.FinderException;
import javax.ejb.NoSuchEntityException;
import javax.ejb.ObjectNotFoundException;
import javax.ejb.RemoveException;
import javax.ejb.CreateException;
import javax.ejb.DuplicateKeyException;
import javax.ejb.EJBException;
import javax.sql.DataSource;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Collection;
import org.apache.log4j.Category;
/**
* Models a car.
*
* @ejb.bean
* name="Car"
* generate="true"
* view-type="local"
* type="CMP"
* local-jndi-name="CarEJB.CarHome"
* reentrant="False"
* cmp-version="2.x"
* primkey-field="number"
*
* @ejb.pk
* class="java.lang.String"
* generate="false"
*
* @ejb.transaction type="Required"
*
* @ejb.finder
* view-type="local"
* signature="java.util.Collection findAll()"
* query="SELECT OBJECT(c) FROM Car AS c"
*
* @ejb.finder
* view-type="local"
* signature="java.util.Collection findByColor( java.lang.String color )"
* query="SELECT OBJECT(c) FROM Car AS c WHERE c.color = ?1"
*
* @ejb.finder
* view-type="local"
* signature="java.util.Collection findAfterYear( int year )"
* query="SELECT OBJECT(c) FROM Car AS c WHERE c.year > ?1"
*
* @@ejb.persistence table-name="cars"
* @weblogic:table-name cars
*
* @jboss.create-table "${jboss.create.table}"
* @jboss.remove-table "${jboss.remove.table}"
*
* @author <a href="mailto:loubyansky@hotmail.com">Alex Loubyansky</a>
*/
public abstract class CarBean
implements EntityBean
{
// Constants -----------------------------------------------------
static Category log = Category.getInstance( CarBean.class );
// Attributes ----------------------------------------------------
private EntityContext ctx;
// CMP Accessors -------------------------------------------------
/**
* Car's number: primary key field
*
* @ejb.pk-field
* @ejb.persistent-field
* @ejb.interface-method
*
* xdoclet needs to be updated
* @@ejb.persistence
* column-name="number"
* jdbc-type="VARCHAR"
* sql-type="VARCHAR(50)"
*
* @weblogic:dbms-column number
*/
public abstract String getNumber();
public abstract void setNumber(String number);
/**
* Car's color: persistent field
*
* @ejb.persistent-field
* @ejb.interface-method
*
* xdoclet needs to be updated
* @@ejb.persistence
* column-name="color"
* jdbc-type="VARCHAR"
* sql-type="VARCHAR(30)"
*
* @weblogic:dbms-column color
*/
public abstract String getColor();
public abstract void setColor(String color);
/**
* Year of birth: persistent field
*
* @ejb.persistent-field
* @ejb.interface-method
*
* xdoclet needs to be updated
* @@ejb.persistence
* column-name="year"
* jdbc-type="INTEGER"
* sql-type="INTEGER"
*
* @weblogic:dbms-column year
*/
public abstract int getYear();
public abstract void setYear(int year);
// EntityBean Implementation -------------------------------------
/**
* @ejb:create-method
*/
public String ejbCreate( String number, String color, int year )
throws CreateException
{
setNumber( number );
setColor( color );
setYear( year );
return null; // See 9.4.2 of the EJB 1.1 specification
}
public void ejbPostCreate( String number, String color, int year ) { }
/**
* @ejb:interface-method
*/
public void ejbRemove()
throws RemoveException
{
log.debug("removed: " + ctx.getPrimaryKey() );
}
public void setEntityContext(EntityContext ctx)
{
this.ctx = ctx;
}
public void unsetEntityContext()
{
ctx = null;
}
public void ejbActivate() { }
public void ejbPassivate() { }
public void ejbLoad() { }
public void ejbStore() { }
}
| CarBean.java |