package m05bSolicitudReserva_FirmaEJB;

import javax.ejb.CreateException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.RemoveException;

import m05bBD.m05bSolicitudReserva_Firma;

/**
 * This class is the Bean Implementation for the Entity EJB <tt>M05SolicitudReserva_FirmaEB</tt>.
 *
 * @see     m05.exe.SolicitudReserva_Firma
 * @see     m05.exe.M05SolicitudReserva_FirmaEB
 * @see     m05.exe.M05SolicitudReserva_FirmaEBPK
 * @see     m05.exe.M05SolicitudReserva_FirmaEBHome
 */
abstract public class m05SolicitudReserva_FirmaBean implements EntityBean {
  private EntityContext ctx;

  /**
   * This is the primary key.
   * It is the clave, which is the primary key
   * in table <tt>m05103t00</tt>.
   */

  /**
   * Returns the Personal information of this E-EJB.
   */
  public m05bSolicitudReserva_Firma getSolicitudReserva_Firma() {

    m05bSolicitudReserva_Firma SolicitudReserva_Firma = new m05bSolicitudReserva_Firma();

    SolicitudReserva_Firma.setCodAsignacion(getCodAsignacion());
    SolicitudReserva_Firma.setTipoFirma(getTipoFirma());
    SolicitudReserva_Firma.setCodFirmante(getCodFirmante());
    SolicitudReserva_Firma.setDni(getDni());
    SolicitudReserva_Firma.setNombre_apellidos(getNombre_apellidos());
    SolicitudReserva_Firma.setDocumento(getDocumento());
    SolicitudReserva_Firma.setFirma(getFirma());
    SolicitudReserva_Firma.setFechaFirma(getFechaFirma());
    SolicitudReserva_Firma.setOid_dokusi(getOid_dokusi());

    return SolicitudReserva_Firma;
  }

  /**
   * Sets the SolicitudReserva_Firma information of this E-EJB.
   * @exception P2GException 
   *              If the given Personal <tt>per_dni</tt> field 
   *              does not match the primary key that is in the E-EJB.
   */
  public void setSolicitudReserva_Firma(m05bSolicitudReserva_Firma SolicitudReserva_Firma) throws Exception {
    //the primary key is never modified!!
    if (!(getCodAsignacion().intValue() == SolicitudReserva_Firma.getCodAsignacion().intValue()
    		&& getTipoFirma().equals(SolicitudReserva_Firma.getTipoFirma())))
    	throw new CreateException ("Cannot modify a different Solicitud reserva_Firma");
    
    setCodFirmante(SolicitudReserva_Firma.getCodFirmante());
    setDni(SolicitudReserva_Firma.getDni());
    setNombre_apellidos(SolicitudReserva_Firma.getNombre_apellidos());
    setDocumento(SolicitudReserva_Firma.getDocumento());
    setFirma(SolicitudReserva_Firma.getFirma());
    setFechaFirma(SolicitudReserva_Firma.getFechaFirma());
    setOid_dokusi(SolicitudReserva_Firma.getOid_dokusi());
  }


  abstract public Integer getCodAsignacion();
  abstract public void setCodAsignacion(Integer n);

  abstract public String getTipoFirma();
  abstract public void setTipoFirma(String n);

  abstract public String getCodFirmante();
  abstract public void setCodFirmante(String n);
  
  abstract public String getDni();
  abstract public void setDni(String n);
  
  abstract public String getNombre_apellidos();
  abstract public void setNombre_apellidos(String n);

  abstract public byte[] getDocumento();
  abstract public void setDocumento(byte[] n);

  abstract public byte[] getFirma();
  abstract public void setFirma(byte[] n);
  
  abstract public String getFechaFirma();
  abstract public void setFechaFirma(String n);
  
  abstract public String getOid_dokusi();
  abstract public void setOid_dokusi(String oid_dokusi);


  public void ejbActivate() { }

  public void ejbPassivate() { }

  public void setEntityContext(EntityContext ctx) {
	  this.ctx = ctx;
  }

  public void unsetEntityContext() {
	  this.ctx = null;
  }

  public void ejbLoad() { }

  public void ejbStore() { }

  public void ejbRemove() throws RemoveException  { }

  /**
   * This function initializes the Personal
   * information of this E-EJB
   * It assigns a new primary key to the Personal.
   */
  public m05SolicitudReserva_FirmaPK ejbCreate(m05bSolicitudReserva_Firma SolicitudReserva_Firma) throws CreateException
  {
    try {
    	setCodAsignacion(getCodAsignacion());
    	setTipoFirma(getTipoFirma());
    } catch (Exception e) {
      throw new CreateException (e.getMessage());
    }

    setCodFirmante(SolicitudReserva_Firma.getCodFirmante());
    setDni(SolicitudReserva_Firma.getDni());
    setNombre_apellidos(SolicitudReserva_Firma.getNombre_apellidos());
    setDocumento(SolicitudReserva_Firma.getDocumento());
    setFirma(SolicitudReserva_Firma.getFirma());
    setFechaFirma(SolicitudReserva_Firma.getFechaFirma());
    setOid_dokusi(SolicitudReserva_Firma.getOid_dokusi());

    return null;
  }
  
  public void ejbPostCreate(m05bSolicitudReserva_Firma SolicitudReserva_Firma) { }
}