/**
 * 
 */
package com.ejie.ab61.adaptadores;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.ejie.ab61.adaptadores.service.X43SolicitudesYAportacionesService;
import com.ejie.ab61.clientesWS.X43SolicitudesYAportaciones.AExtensionPoint;
import com.ejie.ab61.clientesWS.X43SolicitudesYAportaciones.TAdminInitRequest;
import com.ejie.ab61.clientesWS.X43SolicitudesYAportaciones.TSubmissionResponse;
import com.ejie.ab61.clientesWS.X43Toolkit.Exception_Exception;

/**
 *  
 * 
 */
@Service(value = "X43SolicitudesYAportacionesAdaptadorServiceImpl")
public class X43SolicitudesYAportacionesAdaptadorServiceImpl implements X43SolicitudesYAportacionesAdaptadorService {

	public static final Logger logger = LoggerFactory.getLogger(X43SolicitudesYAportacionesAdaptadorServiceImpl.class);

	@Autowired()
	private X43SolicitudesYAportacionesService x43SolicitudesYAportacionesService;

	/**
	 * Metodo que permite a la administración iniciar una solicitud bien por
	 * iniciativa propia, por ser una petición razonada o por una denuncia
	 * 
	 * @param adminInitiation
	 *            TAdminInitRequest
	 * @param ep
	 *            AExtensionPoint
	 * 
	 * @return TSubmissionResponse
	 * 
	 * @throws X43SolicitudesYAportacionesException
	 *             X43SolicitudesYAportacionesException
	 */
	public TSubmissionResponse addAdminApplication(TAdminInitRequest adminInitiation, AExtensionPoint ep)
			throws Exception_Exception {

		X43SolicitudesYAportacionesAdaptadorServiceImpl.logger
				.info("X43SolicitudesYAportacionesAdaptadorServiceImpl.addAdminApplication - Inicio");

		TSubmissionResponse respuesta = this.x43SolicitudesYAportacionesService.addAdminApplication(adminInitiation,
				ep);
		X43SolicitudesYAportacionesAdaptadorServiceImpl.logger
				.info("X43SolicitudesYAportacionesAdaptadorServiceImpl.addAdminApplication - Return: " + respuesta);
		return respuesta;

	}

}
