/*
 * Created on 12/05/2004
 *
 * To change the template for this generated file go to
 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
 */
package modelo;

import java.util.LinkedList;
import java.util.Map;

/**
 * @author german
 *
 * To change the template for this generated type comment go to
 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
 */
public class CrearReq extends FuncionAbstracta {

	public CrearReq(){
	}

//como parametro viene el sistema, proyecto, nombre, descripcion,  prioridad, tipoReq
//Esta opracion solo la puede hacer el lider del proyecto 
	public Object execute(Map m) {
		Sistema sist=(Sistema)m.get(Constants.SISTEMA);
		Proyecto project=(Proyecto)m.get(Constants.PROYECTO);
		String nombre=(String)m.get(Constants.NOMBRE);
		Integer prioridad=(Integer) m.get(Constants.PRIORIDAD);
		String desc=(String)m.get(Constants.DESCRIPCION);
		TipoRequerimiento tipoReq=(TipoRequerimiento)m.get(Constants.TIPOREQ);
		Requerimiento req=new Requerimiento(nombre,prioridad.intValue(),desc, tipoReq,new LinkedList());
//llama a addRequerimiento para que el proyecto le agregue al nuevo requerimiento 
//su estado inicial.
		project.addRequerimiento(req);
		return req;
			
			
	}

}