Commit 01ff2cc669e89577fd72f3cc918f8ad2a28311c1
1 parent
55f623c0
Exists in
master
and in
66 other branches
catalog draft
Showing
4 changed files
with
73 additions
and
5 deletions
Show diff stats
src/InputOutput/IHMImpl/IHMInputOutputClass.php
... | ... | @@ -48,9 +48,9 @@ class IHMInputOutputClass implements InputOutputInterface |
48 | 48 | if (($input->format == "PNG") && ($input->tabId != "")) |
49 | 49 | $requestId = "Plot".$input->tabId; |
50 | 50 | break; |
51 | - case 'catalog' : | |
51 | + case 'statistics' : | |
52 | 52 | //catalog generation |
53 | - $this->inputOutput = new IHMInputOutputParamsCatalogClass(); | |
53 | + $this->inputOutput = new IHMInputOutputParamsStatisticsClass(); | |
54 | 54 | break; |
55 | 55 | default : |
56 | 56 | throw new Exception('Params request type '.$input_request->nodeType.' not implemented for this client.'); |
... | ... |
src/InputOutput/IHMImpl/Params/StatisticsImpl/IHMInputOutputParamsStatisticsClass.php
0 → 100644
... | ... | @@ -0,0 +1,62 @@ |
1 | +<?php | |
2 | + | |
3 | +define ("STATISTICS_RESULT_FILE_KEY", "statistic"); | |
4 | + | |
5 | +/** | |
6 | + * @class IHMInputOutputParamsStatisticsClass | |
7 | + * @brief Implementation of IHMInputOutputParamsAbstractClass to treat catalog generation request | |
8 | + * @details | |
9 | +*/ | |
10 | +class IHMInputOutputParamsStatisticsClass extends IHMInputOutputParamsAbstractClass | |
11 | +{ | |
12 | + /* | |
13 | + * @brief method to unmarshall a catalog generation request | |
14 | + */ | |
15 | + protected function unmarshallRequest($input) | |
16 | + { | |
17 | + /* | |
18 | + {"id":"","timesrc":"TimeTable","name":"test","created":null,"description":"first","objName":"","objFormat":"","folderId":"","nbIntervals":0,"cacheToken":"","parameter":[{"param":"imf_gsm","function":"min"},{"param":"imf_mag","function":"max"}],"timeTables":[{"id":"sharedtt_26"},{"id":"sharedtt_27"}],"leaf":true,"nodeType":"catalog"}]' | |
19 | + */ | |
20 | + $paramsNode = $this->paramsData->getRequestNode()->getParamsNode(); | |
21 | + | |
22 | + //unmarshall time definition | |
23 | + $this->unmarshallTimeDefinition($input); | |
24 | + | |
25 | + //unmarshall statistic output definition | |
26 | + $outputsNode = $this->paramsData->getRequestNode()->getOutputsNode(); | |
27 | + $catalogNode = $outputsNode->addNewOutput(RequestOutputTypeEnum::STATISTIC); | |
28 | + $catalogNode->setTimeFormat(RequestOutputStatisticTimeFormatEnum::ISO); | |
29 | + $catalogNode->setFileFormat(RequestOutputStatisticFileFormatEnum::XML); | |
30 | + | |
31 | + // parse parameters / functions array | |
32 | + foreach ($input->parameter as $obj) { | |
33 | + $paramFunctionAssociation[$obj->param][] = $obj->function; | |
34 | + } | |
35 | + | |
36 | + foreach ($paramFunctionAssociation as $param => $functions) { | |
37 | + $paramsNode->addParam($param); | |
38 | + $outputParamNode = $catalogNode->addParam($param); | |
39 | + foreach ($functions as $function) $outputParamNode->addFunction($function); | |
40 | + $paramInfo = $this->paramManager->addExistingParam($param,$this->paramsData); | |
41 | + } | |
42 | + | |
43 | + $resultFile = "result_".$this->requestID; | |
44 | + $this->paramsData->addWaitingResult(STATISTICS_RESULT_FILE_KEY, $resultFile); | |
45 | +// | |
46 | + $postProcessCmd = "mv statistic-*"; | |
47 | + $postProcessCmd .= " ".$resultFile.".xml"; | |
48 | + | |
49 | +// | |
50 | + $this->paramsData->setPostCmd($postProcessCmd); | |
51 | + return $this->paramsData; | |
52 | + } | |
53 | + | |
54 | + /* | |
55 | + * @brief method to marshall the result of a catalog generation request | |
56 | + */ | |
57 | + protected function marshallResult($data) | |
58 | + { | |
59 | + return $this->commonMarshallResult($data,STATISTICS_RESULT_FILE_KEY); | |
60 | + } | |
61 | +} | |
62 | +?> | |
0 | 63 | \ No newline at end of file |
... | ... |
src/InputOutput/IHMImpl/Tools/IHMJobsManagerClass.php
... | ... | @@ -10,11 +10,13 @@ class IHMJobsManagerClass { |
10 | 10 | |
11 | 11 | protected $bkgRootNode = array('condition' => 'bkgSearch-treeRootNode', |
12 | 12 | 'request' => 'bkgPlot-treeRootNode', |
13 | - 'download' => 'bkgDown-treeRootNode'); | |
13 | + 'download' => 'bkgDown-treeRootNode', | |
14 | + 'statistics' => 'bkgStatistics-treeRootNode'); | |
14 | 15 | |
15 | 16 | protected $resRootNode = array('condition' => 'resSearch-treeRootNode', |
16 | 17 | 'request' => 'resPlot-treeRootNode', |
17 | - 'download' => 'resDown-treeRootNode'); | |
18 | + 'download' => 'resDown-treeRootNode', | |
19 | + 'statistics' => 'resStatistics-treeRootNode'); | |
18 | 20 | |
19 | 21 | /* |
20 | 22 | * @brief Constructor |
... | ... | @@ -259,6 +261,10 @@ class IHMJobsManagerClass { |
259 | 261 | $name = 'datamining_'.time(); |
260 | 262 | $info = $obj->expression; |
261 | 263 | break; |
264 | + case 'statistics' : | |
265 | + $name = 'statistics_'.time(); | |
266 | + $info = $obj->expression; | |
267 | + break; | |
262 | 268 | case 'download' : |
263 | 269 | if ($obj->downloadSrc == '2') //fits image |
264 | 270 | $name = "download_fits_".time(); |
... | ... |
src/RequestManager.php
... | ... | @@ -9,7 +9,7 @@ function amdaintegration_autoload($class_name) |
9 | 9 | 'InputOutput/IHMImpl/Config', |
10 | 10 | 'InputOutput/IHMImpl/Params', |
11 | 11 | 'InputOutput/IHMImpl/Params/DataMiningImpl', |
12 | - 'InputOutput/IHMImpl/Params/CatalogImpl', | |
12 | + 'InputOutput/IHMImpl/Params/StatisticsImpl', | |
13 | 13 | 'InputOutput/IHMImpl/Params/DownloadImpl', |
14 | 14 | 'InputOutput/IHMImpl/Params/PlotImpl', |
15 | 15 | 'InputOutput/IHMImpl/Params/GeneratorImpl', |
... | ... |