package com.ejie.m62fb.ws.client.impl;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.ejie.m62fb.ws.client.x43Toolkit.X43KWebService;

/**
 * Clase que expone los metodos a utilizar para invocar a los servicios web de
 * Platea
 * 
XXXX
 */
@Service
public class PlateaServiceImpl implements PlateaService {

	private static final Log log = LogFactory.getLog(PlateaServiceImpl.class);

	@Autowired
	private X43KWebService x43kWebService;

	@Override
	@Transactional(rollbackFor = Throwable.class)
	public String getRequestInformation(String idSolicitud, String folderId)
			throws Exception {

		PlateaServiceImpl.log.debug("getRequestInformation --> START");
		PlateaServiceImpl.log.debug("getRequestInformation --> idSolicitud: "
				+ idSolicitud);
		PlateaServiceImpl.log.debug("getRequestInformation --> folderId: "
				+ folderId);

		String respuesta = null;
		try {
			// Invocamos a PLATEA
			respuesta = this.x43kWebService.getRequestInformation(idSolicitud,
					folderId);

			PlateaServiceImpl.log.debug("getRequestInformation --> respuesta: "
					+ respuesta);

			return respuesta;
		} catch (Exception e) {
			PlateaServiceImpl.log
					.error("getRequestInformation --> Error en la llamada a getRequestInformation.");
			throw e;
		}
	}
}