package myapp;
import java.util.Vector;
import org.exolab.castor.jdo.Database;
import org.exolab.castor.jdo.Persistent;
import org.exolab.castor.jdo.TimeStampable;
import org.exolab.castor.mapping.AccessMode;
public class Product implements Persistent, TimeStampable {
private int _id;
private String _name;
private float _price;
private ProductGroup _group;
private long _timeStamp;
private Vector _details = new Vector();
private Vector _categories = new Vector();
public int getId() {
return _id;
}
public void setId(final int id) {
_id = id;
}
public String getName() {
return _name;
}
public void setName(final String name) {
_name = name;
}
public float getPrice() {
return _price;
}
public void setPrice(final float price) {
_price = price;
}
public ProductGroup getGroup() {
return _group;
}
public void setGroup(final ProductGroup group) {
_group = group;
}
public ProductDetail createDetail() {
return new ProductDetail();
}
public Vector getDetails() {
return _details;
}
public void addDetail(final ProductDetail detail) {
_details.add(detail);
detail.setProduct(this);
}
public Vector getCategories() {
return _categories;
}
public void addCategories(final Category category) {
if (!_categories.contains(category)) {
_categories.addElement(category);
category.addProduct(this);
}
}
public void jdoPersistent(final Database db) {
}
public void jdoTransient() {
}
public Class jdoLoad(final AccessMode accessMode) {
if (_name.indexOf("PC") >= 0) {
return Computer.class;
}
return null;
}
public void jdoBeforeCreate(final Database db) {
}
public void jdoAfterCreate() {
}
public void jdoStore(final boolean modified) {
}
public void jdoBeforeRemove() {
}
public void jdoAfterRemove() {
}
public void jdoUpdate() {
}
public void jdoSetTimeStamp(final long timeStamp) {
// System.out.println( "CHANGING TIMESTAMP FROM: " + _timeStamp +
// " TO: " + timeStamp );
_timeStamp = timeStamp;
}
public long jdoGetTimeStamp() {
// System.out.println( "GRABBING TIMESTAMP " + _timeStamp );
return _timeStamp;
}
public String toString() {
return "<id: " + _id + " name: " + _name + " price: " + _price + ">";
}
public void jdoModify() throws Exception {
}
}