Commit 2a42aad33f100f2939c5658a3701525e71bd357e
1 parent
60aa4707
Exists in
master
and in
3 other branches
Add getGranules in DDService
Showing
4 changed files
with
79 additions
and
4 deletions
Show diff stats
src/DATA/TOOLS/GetGranules.c
@@ -4,7 +4,7 @@ | @@ -4,7 +4,7 @@ | ||
4 | * | 4 | * |
5 | * @details GetGranules(string *) <br> | 5 | * @details GetGranules(string *) <br> |
6 | * @arg \c argv[1] Path to VI | 6 | * @arg \c argv[1] Path to VI |
7 | -* @arg \c argv[2] Prefix | 7 | +* @arg \c argv[2] Times file name |
8 | * | 8 | * |
9 | */ | 9 | */ |
10 | 10 | ||
@@ -32,7 +32,7 @@ int main(int argc, char *argv[]) | @@ -32,7 +32,7 @@ int main(int argc, char *argv[]) | ||
32 | int status; | 32 | int status; |
33 | 33 | ||
34 | if (argc < 3){ | 34 | if (argc < 3){ |
35 | - fprintf(stderr,"Usage: GetGranules path_to_vi prefix\n"); | 35 | + fprintf(stderr,"Usage: GetGranules path_to_vi times_file_name\n"); |
36 | exit(1); | 36 | exit(1); |
37 | } | 37 | } |
38 | 38 | ||
@@ -41,7 +41,6 @@ int main(int argc, char *argv[]) | @@ -41,7 +41,6 @@ int main(int argc, char *argv[]) | ||
41 | strcat(timesPath, argv[1]); | 41 | strcat(timesPath, argv[1]); |
42 | strcat(timesPath, "/"); | 42 | strcat(timesPath, "/"); |
43 | strcat(timesPath, argv[2]); | 43 | strcat(timesPath, argv[2]); |
44 | - strcat(timesPath, "_times.nc"); | ||
45 | 44 | ||
46 | // Open VI_times.nc | 45 | // Open VI_times.nc |
47 | int DataID; | 46 | int DataID; |
@@ -0,0 +1,35 @@ | @@ -0,0 +1,35 @@ | ||
1 | +<?php | ||
2 | + | ||
3 | +/** | ||
4 | +* @file getGranules.php | ||
5 | +* @brief Returns Granules for a given DataSet | ||
6 | +* @version $Id: $ | ||
7 | +*/ | ||
8 | + | ||
9 | + if (!isset($_GET['id'])) exit('INPUT ERROR'); | ||
10 | + | ||
11 | + require_once './DDserverWeb_ini.php'; | ||
12 | + | ||
13 | + error_reporting(E_ERROR | E_WARNING | E_PARSE); | ||
14 | + | ||
15 | + $replace = array("-" => "_"); | ||
16 | + | ||
17 | + $dataSet = strtr($_GET['id'], $replace); | ||
18 | + | ||
19 | + $referXML = baseDir."/DDsys.xml"; | ||
20 | + $DDsys = new DOMDocument("1.0"); | ||
21 | + $DDsys->load($referXML); | ||
22 | + $xp = new domxpath($DDsys); | ||
23 | + $VI = $xp->query("//NAME[.='".$dataSet."']"); | ||
24 | + | ||
25 | + if ($VI->item(0)->nodeValue != NULL) | ||
26 | + { | ||
27 | + $location = $VI->item(0)->parentNode->getElementsByTagName("LOCATION")->item(0)->nodeValue; | ||
28 | + $times = $VI->item(0)->parentNode->getElementsByTagName("TIMES")->item(0)->nodeValue; | ||
29 | + $cmd = "/opt/tools/DDServer/bin/GetGranules ".$location." ".$times; | ||
30 | + exec($cmd, $output, $result_code); | ||
31 | + if ($result_code === 0) | ||
32 | + exit(implode("\n",$output)); | ||
33 | + } | ||
34 | + exit('ERROR'); | ||
35 | +?> |
src/DDSERVICES/SOAP/DDserverWeb.php
@@ -492,6 +492,26 @@ | @@ -492,6 +492,26 @@ | ||
492 | return null; | 492 | return null; |
493 | } | 493 | } |
494 | 494 | ||
495 | + | ||
496 | + function getGranules($dataset) | ||
497 | + { | ||
498 | + $referXML = baseDir."/DDsys.xml"; | ||
499 | + $DDsys = new DOMDocument("1.0"); | ||
500 | + $DDsys->load($referXML); | ||
501 | + $xp = new domxpath($DDsys); | ||
502 | + $VI = $xp->query("//NAME[.='".$dataSet."']"); | ||
503 | + | ||
504 | + if ($VI->item(0)->nodeValue != NULL) | ||
505 | + { | ||
506 | + $location = $VI->item(0)->parentNode->getElementsByTagName("LOCATION")->item(0)->nodeValue; | ||
507 | + $times = $VI->item(0)->parentNode->getElementsByTagName("TIMES")->item(0)->nodeValue; | ||
508 | + $cmd = "/opt/tools/DDServer/bin/GetGranules ".$location." ".$times; | ||
509 | + exec($cmd, $output, $result_code); | ||
510 | + if ($result_code === 0) | ||
511 | + return implode("\n",$output); | ||
512 | + } | ||
513 | + return NULL; | ||
514 | + } | ||
495 | 515 | ||
496 | /** | 516 | /** |
497 | * Returns String Start-Stop for local DataSet in DD Base | 517 | * Returns String Start-Stop for local DataSet in DD Base |
src/DDSERVICES/SOAP/dd.wsdl.in
@@ -86,6 +86,12 @@ | @@ -86,6 +86,12 @@ | ||
86 | <message name='getLastRealUpdateResponse'> | 86 | <message name='getLastRealUpdateResponse'> |
87 | <part name='Result' type='xsd:string'/> | 87 | <part name='Result' type='xsd:string'/> |
88 | </message> | 88 | </message> |
89 | +<message name='getGranulesRequest'> | ||
90 | + <part name='dataSet' type='xsd:string'/> | ||
91 | +</message> | ||
92 | +<message name='getGranulesResponse'> | ||
93 | + <part name='Result' type='xsd:string'/> | ||
94 | +</message> | ||
89 | <message name='getInfoRequest'> | 95 | <message name='getInfoRequest'> |
90 | <part name='dataSet' type='xsd:string'/> | 96 | <part name='dataSet' type='xsd:string'/> |
91 | <part name='infoName' type='xsd:string'/> | 97 | <part name='infoName' type='xsd:string'/> |
@@ -193,6 +199,10 @@ | @@ -193,6 +199,10 @@ | ||
193 | <operation name='getLastRealUpdate'> | 199 | <operation name='getLastRealUpdate'> |
194 | <input message='tns:getLastRealUpdateRequest'/> | 200 | <input message='tns:getLastRealUpdateRequest'/> |
195 | <output message='tns:getLastRealUpdateResponse'/> | 201 | <output message='tns:getLastRealUpdateResponse'/> |
202 | + </operation> | ||
203 | + <operation name='getGranules'> | ||
204 | + <input message='tns:getGranulesRequest'/> | ||
205 | + <output message='tns:getGranulesResponse'/> | ||
196 | </operation> | 206 | </operation> |
197 | <operation name='getInfo'> | 207 | <operation name='getInfo'> |
198 | <input message='tns:getInfoRequest'/> | 208 | <input message='tns:getInfoRequest'/> |
@@ -316,7 +326,18 @@ | @@ -316,7 +326,18 @@ | ||
316 | <soap:body use='encoded' | 326 | <soap:body use='encoded' |
317 | encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> | 327 | encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> |
318 | </output> | 328 | </output> |
319 | - </operation> | 329 | + </operation> |
330 | + <operation name='getGranules'> | ||
331 | + <soap:operation soapAction='getGranules'/> | ||
332 | + <input> | ||
333 | + <soap:body use='encoded' | ||
334 | + encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> | ||
335 | + </input> | ||
336 | + <output> | ||
337 | + <soap:body use='encoded' | ||
338 | + encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> | ||
339 | + </output> | ||
340 | + </operation> | ||
320 | <operation name='getInfo'> | 341 | <operation name='getInfo'> |
321 | <soap:operation soapAction='getSInfo'/> | 342 | <soap:operation soapAction='getSInfo'/> |
322 | <input> | 343 | <input> |