package org.salamanca.commands.persona;
import org.salamanca.commands.ICommand;
import org.salamanca.domain.User;
import org.salamanca.broker.BrokerServer;
import javax.jdo.PersistenceManager;
import org.salamanca.domain.Persona;
import org.salamanca.commands.MessageException;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class EliminarPersona implements ICommand {
Persona persona;
/**
* InsertarUsuario
*
* @param user User
*/
public EliminarPersona(Persona persona) {
this.persona = persona;
}
/**
* getCommandName
*
* @return String
*/
public String getCommandName() {
return this.getClass().getName();
}
/**
* getBarDelimitedParameters
*
* @return String
*/
public String getBarDelimitedParameters() {
return " DNI " + persona.getDni();
}
/**
* execute
*/
public void execute() throws MessageException {
if (persona.getSetAlumno().size() > 0) {
throw new MessageException(
"No se puede Borrar, la persona esta o estuvo inscripta en cursos");
}
if (persona.getSetDescuento().size() > 0) {
throw new MessageException(
"No se puede Borrar, est� asociada a uno o mas Descuentos");
}
if (persona.getSetVale().size() > 0) {
throw new MessageException(
"No se puede Borrar, est� asociada a uno o mas Vales");
}
PersistenceManager pm = BrokerServer.instance().getPMF().
getPersistenceManager();
pm.currentTransaction().begin();
Persona personaPM = (Persona) pm.getObjectById(javax.jdo.JDOHelper.
getObjectId(
persona), true);
pm.deletePersistent(personaPM);
pm.currentTransaction().commit();
}
}