IHMInputOutputGetInfoProcessClass.php 1.29 KB
<?php

/**
 * @class IHMInputOutputGetInfoProcessClass
 * @brief Class that's implement an InputOutputInterface used to treat a get info process request
 * @details
 */
class IHMInputOutputGetInfoProcessClass implements InputOutputInterface
{
	private $jobsManager       = null;
	private $paramsData        = null;

	/*
	 * @brief Constructor
	*/
	function __construct()
	{
		$this->jobsManager      = new IHMJobsManagerClass();
	}

	/*
	 * @brief translate input data from IHM client to AMDA_Integration module for a get info process request
	*/
	public function getInputData($input,$function,$requestId="")
	{
		if (isset($this->paramsData))
			unset($this->paramsData);

		$this->paramsData = new ProcessRequestDataClass();

		$this->paramsData->setManagerFilePath(IHMConfigClass::getProcessManagerFilePath());
		$this->paramsData->setType(ProcessTypeEnumClass::INFO);

		$this->paramsData->setId($input);

		return $this->paramsData;
	}

	/*
	 * @brief translate output data from AMDA_Integration module to IHM client for a get info process request
	*/
	public function getOutput($data)
	{
		if (!$data->getSuccess())
		{
			return array(
					'success' => false,
					'message' => $data->getLastErrorMessage());
		}

		return $this->jobsManager->getJobInfo($this->paramsData->getId());
	}
}

?>