FoodWaveTemplateProduct.java 3.41 KB
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package fi.insomnia.model;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

/**
 *
 * @author jkj
 */
@Entity
@Table(name = "food_wave_template_products", uniqueConstraints = {
    @UniqueConstraint(columnNames = {"food_wave_templates_id", "products_id"})})
@NamedQueries({
    @NamedQuery(name = "FoodWaveTemplateProduct.findAll", query = "SELECT f FROM FoodWaveTemplateProduct f"),
    @NamedQuery(name = "FoodWaveTemplateProduct.findByFoodWaveTemplateProductsId", query = "SELECT f FROM FoodWaveTemplateProduct f WHERE f.foodWaveTemplateProductsId = :foodWaveTemplateProductsId")})
public class FoodWaveTemplateProduct implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "food_wave_template_products_id", nullable = false)
    private Integer foodWaveTemplateProductsId;
    @JoinColumn(name = "food_wave_templates_id", referencedColumnName = "food_wave_templates_id", nullable = false)
    @ManyToOne(optional = false)
    private FoodWaveTemplate foodWaveTemplatesId;
    @JoinColumn(name = "products_id", referencedColumnName = "products_id", nullable = false)
    @ManyToOne(optional = false)
    private Product productsId;

    public FoodWaveTemplateProduct() {
    }

    public FoodWaveTemplateProduct(Integer foodWaveTemplateProductsId) {
        this.foodWaveTemplateProductsId = foodWaveTemplateProductsId;
    }

    public Integer getFoodWaveTemplateProductsId() {
        return foodWaveTemplateProductsId;
    }

    public void setFoodWaveTemplateProductsId(Integer foodWaveTemplateProductsId) {
        this.foodWaveTemplateProductsId = foodWaveTemplateProductsId;
    }

    public FoodWaveTemplate getFoodWaveTemplatesId() {
        return foodWaveTemplatesId;
    }

    public void setFoodWaveTemplatesId(FoodWaveTemplate foodWaveTemplatesId) {
        this.foodWaveTemplatesId = foodWaveTemplatesId;
    }

    public Product getProductsId() {
        return productsId;
    }

    public void setProductsId(Product productsId) {
        this.productsId = productsId;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (foodWaveTemplateProductsId != null ? foodWaveTemplateProductsId.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof FoodWaveTemplateProduct)) {
            return false;
        }
        FoodWaveTemplateProduct other = (FoodWaveTemplateProduct) object;
        if ((this.foodWaveTemplateProductsId == null && other.foodWaveTemplateProductsId != null) || (this.foodWaveTemplateProductsId != null && !this.foodWaveTemplateProductsId.equals(other.foodWaveTemplateProductsId))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "fi.insomnia.model.FoodWaveTemplateProduct[foodWaveTemplateProductsId=" + foodWaveTemplateProductsId + "]";
    }

}