<?php define ("REQUESTOUTPUTS_NAME", "outputs"); abstract class RequestOutputTypeEnum { const DOWNLOAD = "Download"; const DATAMINING = "DataMining"; const PLOT = "Plot"; const STATISTIC = "Statistic"; } /** * @class RequestOutputsNodeClass * @brief Definition of a request outputs node for AMDA_Kernel * @details */ class RequestOutputsNodeClass extends NodeClass { public function __construct() { parent::__construct(REQUESTOUTPUTS_NAME); } public function addNewOutput($type) { switch ($type) { case RequestOutputTypeEnum::DOWNLOAD : $output = new RequestOutputDownloadNodeClass(); break; case RequestOutputTypeEnum::DATAMINING : $output = new RequestOutputDataMiningNodeClass(); break; case RequestOutputTypeEnum::PLOT : $output = new RequestOutputPlotNodeClass(); break; case RequestOutputTypeEnum::STATISTIC : $output = new RequestOutputStatisticNodeClass(); break; default : throw new Exception('Output node not implemented'); } if (isset($output) && ($output != NULL)) $this->addChild($output); return $output; } } ?>