setAttribute(REQUESTPARAM_ID, $id); } public function getId() { return $this->getAttribute(REQUESTPARAM_ID); } public function loadFromNode($xmlNode) { $this->setId($this->getXmlNodeAttribute($xmlNode, REQUESTPARAM_ID)); } } define ("REQUESTPARAMS_NAME", "params"); /** * @class RequestParamsNodeClass * @brief Definition of a request params node for AMDA_Kernel * @details */ class RequestParamsNodeClass extends NodeClass { public function __construct() { parent::__construct(REQUESTPARAMS_NAME); } public function addParam($id = "") { foreach ($this->getChildrenByName(REQUESTPARAM_NAME) as $paramNode) if ($paramNode->getId() == $id) return $paramNode; $param = new RequestParamNodeClass(); $param->setId($id); $this->addChild($param); return $param; } public function getParamList() { return $this->getChildrenByName(REQUESTPARAM_NAME); } public function loadFromNode($xmlNode) { foreach ($this->getXmlNodeChildrenByTagName($xmlNode, REQUESTPARAM_NAME) as $requestParamXmlNode) { $this->addParam()->loadFromNode($requestParamXmlNode); } } } define ("REQUEST_NAME", "request"); /** * @class RequestNodeClass * @brief Definition of a request node for AMDA_Kernel * @details */ class RequestNodeClass extends NodeClass { private $realIndex = 0; public function __construct() { parent::__construct(REQUEST_NAME); $this->addChild(new RequestParamsNodeClass()); $this->addChild(new RequestTimesNodeClass()); $this->addChild(new RequestOutputsNodeClass()); } public function getParamsNode() { return $this->getFirstChildByName(REQUESTPARAMS_NAME); } public function getTimesNode() { return $this->getFirstChildByName(REQUESTTIMES_NAME); } public function getOutputsNode() { return $this->getFirstChildByName(REQUESTOUTPUTS_NAME); } public function setRealIndex($index) { $this->realIndex = $index; } public function getRealIndex() { return $this->realIndex; } public function loadFromNode($xmlNode) { $paramsXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTPARAMS_NAME); if (isset($paramsXmlNode)) $this->getParamsNode()->loadFromNode($paramsXmlNode); $timesXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTTIMES_NAME); if (isset($timesXmlNode)) $this->getTimesNode()->loadFromNode($timesXmlNode); $outputsXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTOUTPUTS_NAME); if (isset($outputsXmlNode)) $this->getOutputsNode()->loadFromNode($outputsXmlNode); } } ?>