/*
 * Created on 2007-01-16
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

package mrPack.model;

import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.beans.PropertyVetoException;
import java.beans.VetoableChangeListener;
import java.beans.VetoableChangeSupport;

public class Oferta {
    private String panstwo;

    private String miasto;

    private String rodzaj;

    private int cena;

    private String wyjazd;

    private String powrot;

    private String opis;

    private int idOferta;

    private final PropertyChangeSupport propertyChange = new PropertyChangeSupport(
            this);

    private final VetoableChangeSupport vetoChange = new VetoableChangeSupport(
            this);

    public Oferta() {
        super();
        // TODO Auto-generated constructor stub
    }

    public Oferta(int idOferta, String panstwo, String miasto, String rodzaj,
            int cena, String Wyjazd, String Powrot, String opis) {
        this.panstwo = panstwo;
        this.miasto = miasto;
        this.rodzaj = rodzaj;
        this.cena = cena;
        this.wyjazd = Wyjazd;
        this.powrot = Powrot;
        this.idOferta = idOferta;
        this.opis = opis;
    }

    public int getCena() {
        return cena;
    }

    /**
     * @param cena
     *            The cena to set.
     * @throws PropertyVetoException
     */
    public void setCena(int cena) throws PropertyVetoException {
        int staraCena = this.cena;
        this.vetoChange.fireVetoableChange("cena", staraCena, cena);
        this.cena = cena;
        this.propertyChange.firePropertyChange("cena", staraCena, cena);
    }

    public int getIdOferta() {
        return idOferta;
    }

    public void setIdOferta(int idOferta) {
        this.idOferta = idOferta;
    }

    public String getMiasto() {
        return miasto;
    }

    public void setMiasto(String miasto) {
        this.miasto = miasto;
    }

    public String getPowrot() {
        return powrot;
    }

    public void setPowrot(String powrot) {
        this.powrot = powrot;
    }

    public String getRodzaj() {
        return rodzaj;
    }

    public void setRodzaj(String rodzaj) {
        this.rodzaj = rodzaj;
    }

    public String getWyjazd() {
        return wyjazd;
    }

    public void setWyjazd(String wyjazd) {
        this.wyjazd = wyjazd;
    }

    /**
     * @return Returns the opis.
     */
    public String getOpis() {
        return opis;
    }

    /**
     * @param opis
     *            The opis to set.
     * @throws PropertyVetoException
     */
    public void setOpis(String opis) throws PropertyVetoException {
        String staraNazwaOpis = this.opis;
        this.vetoChange.fireVetoableChange("opis", staraNazwaOpis, opis);
        this.opis = opis;
        this.propertyChange.firePropertyChange("opis", staraNazwaOpis, opis);
    }

    /**
     * @return Returns the panstwo.
     */
    public String getPanstwo() {
        return panstwo;
    }

    /**
     * @param panstwo
     *            The panstwo to set.
     * @throws PropertyVetoException
     */
    public void setPanstwo(String panstwo) throws PropertyVetoException {
        String staraNazwaPanstwo = this.panstwo;
        this.vetoChange.fireVetoableChange("panstwo", staraNazwaPanstwo,
                panstwo);
        this.panstwo = panstwo;
        this.propertyChange.firePropertyChange("panstwo", staraNazwaPanstwo,
                panstwo);
    }

    public synchronized void addPropertyChangeListener(
            PropertyChangeListener listener) {
        propertyChange.addPropertyChangeListener(listener);
    }

    public synchronized void removePropertyChangeListener(
            PropertyChangeListener listener) {
        propertyChange.removePropertyChangeListener(listener);
    }

    public void addVetoableChangeListener(VetoableChangeListener listener) {
        this.vetoChange.addVetoableChangeListener(listener);
    }

    public void removeVetoableChangeListener(VetoableChangeListener listener) {
        this.vetoChange.addVetoableChangeListener(listener);
    }
}