package cz.cvut.fel.restauracefel.hibernate;
// Generated 16.3.2009 21:36:54 by Hibernate Tools 3.2.1.GA
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
/**
* UsedMaterial generated by hbm2java
*/
public class UsedMaterial implements Serializable {
private static final long serialVersionUID = 7570990718241429464L;
private Integer usedMaterialId;
private Material material;
private MenuItem menuItem;
private double quantity;
private int isDeleted;
public UsedMaterial() {
}
public UsedMaterial(Material material, MenuItem menuItem, double quantity, int isDeleted) {
this.material = material;
this.menuItem = menuItem;
this.quantity = quantity;
this.isDeleted = isDeleted;
}
//tato metoda zde musi byt, a to z duvodu, aby mohla probehnout spravne serializace
//zapis objektu do proudu bajtu
private void writeObject(ObjectOutputStream stream) throws IOException {
stream.writeInt(usedMaterialId);
Material m = new Material();
UnitType ut = new UnitType(material.getUnitType().getName(), material.getUnitType().getAbbreviation(), material.getUnitType().getTypeId(), material.getUnitType().getIsDeleted());
ut.setUnitTypeId(material.getUnitType().getUnitTypeId());
MaterialType mt = new MaterialType(material.getMaterialType().getName(), material.getMaterialType().getNote(), material.getMaterialType().getIsDeleted());
mt.setMaterialTypeId(material.getMaterialType().getMaterialTypeId());
m.setMaterialId(material.getMaterialId());
m.setUnitType(ut);
m.setMaterialType(mt);
m.setName(material.getName());
m.setCurrentQuantity(material.getCurrentQuantity());
m.setBarcode(material.getBarcode());
m.setMinimal(material.getMinimal());
m.setIsDeleted(material.getIsDeleted());
stream.writeObject(m);
MenuItem mi = new MenuItem();
mi.setMenuItemId(menuItem.getMenuItemId());
mi.setName(menuItem.getName());
mi.setPrice(menuItem.getPrice());
mi.setQuantity(menuItem.getQuantity());
mi.setIsAvailable(menuItem.getIsAvailable());
mi.setIsDeleted(menuItem.getIsDeleted());
stream.writeObject(mi);
stream.writeDouble(quantity);
stream.writeInt(isDeleted);
}
//tato metoda zde musi byt, a to z duvodu, aby mohla probehnout spravne serializace
//cteni a rekonstrukce objektu z proudu bajtu
private void readObject(ObjectInputStream stream) throws IOException {
try {
usedMaterialId = stream.readInt();
material = (Material)(stream.readObject());
menuItem = (MenuItem)(stream.readObject());
quantity = stream.readDouble();
isDeleted = stream.readInt();
} catch (Exception e){
e.getMessage();
}
}
public Integer getUsedMaterialId() {
return this.usedMaterialId;
}
public void setUsedMaterialId(Integer usedMaterialId) {
this.usedMaterialId = usedMaterialId;
}
public Material getMaterial() {
return this.material;
}
public void setMaterial(Material material) {
this.material = material;
}
public MenuItem getMenuItem() {
return this.menuItem;
}
public void setMenuItem(MenuItem menuItem) {
this.menuItem = menuItem;
}
public double getQuantity() {
return this.quantity;
}
public void setQuantity(double quantity) {
this.quantity = quantity;
}
public int getIsDeleted() {
return isDeleted;
}
public void setIsDeleted(int isDeleted) {
this.isDeleted = isDeleted;
}
}