ParamsRequestDataClass.php 1.86 KB
<?php

/**
 * @class ParamsRequestDataClass
 * @brief Data for a params request. Inherits from ProcessRequestDataClass
 * @details
 */
class ParamsRequestDataClass extends ProcessRequestDataClass
{
	private $requestNode           = null;
	private $compilationPath       = "";
	private $waitingResults        = array();
	private $processParamsToCreate = array();
	private $paramsToCopy          = array();

	function __construct()
	{
		parent::__construct();
		$this->requestNode = new RequestNodeClass();
	}

	public function getCompilationPath()
	{
		return $this->compilationPath;
	}

	public function setCompilationPath($compilationPath)
	{
		$this->compilationPath = $compilationPath;
	}

	public function getRequestNode()
	{
		return $this->requestNode;
	}

	public function getWaitingResult($key)
	{
		return $this->waitingResults[$key];
	}

	public function addWaitingResult($key, $result)
	{
		$this->waitingResults[$key] = $result;
	}

	public function getParamsToCopy()
	{
		return $this->paramsToCopy;
	}

	public function addParamToCopy($paramId,$paramFilePath)
	{
		$this->paramsToCopy[$paramId] = $paramFilePath;
	}

	public function getProcessParamsToCreate()
	{
		return $this->processParamsToCreate;
	}

	public function addProcessParamToCreate($paramId, $expression, $getParams, $sampling, $gap, $dateModif)
	{
		$newParam = new ParamNodeClass();
		$newParam->setId($paramId);
		$newParam->setSampling($sampling);
		if (isset($gap) && ($gap > 0))
			$newParam->setGap($gap);
		foreach ($getParams as $getParam)
		{
			$amdaParamNode = $newParam->addParamGet(ParamGetTypeEnum::AMDAPARAM);
			$amdaParamNode->setParamName($getParam);
		}
		$newParam->setProcess($expression);
		$newParam->setOutput();
		$this->processParamsToCreate[$paramId] = array('param' => $newParam, 'dateModif' => $dateModif);
	}
}

?>