Commit fd2b603f72e36fa16f647378f8485c2d2a08cd02
1 parent
4f91dd57
Exists in
master
and in
111 other branches
Bases.xml are in 2 parts
Showing
6 changed files
with
91 additions
and
17 deletions
Show diff stats
... | ... | @@ -0,0 +1,13 @@ |
1 | +<?xml version="1.0"?> | |
2 | +<dataRoot xml:id="myRemoteData-treeRootNode"> | |
3 | + <!--<dataCenter name="CLWEB@IRAP" desc="CLWeb_Internal_Data_Base" default="yes" id1="CLWeb" xml:id="CLWeb"/>--> | |
4 | + <dataCenter name="LATMOS" desc="Latmos Hybrid Simulation Database" isSimulation='1' default="yes" id1="LATMOS" xml:id="LATMOS"/> | |
5 | + <dataCenter name="FMI_HYBRID" desc="FMI Hybrid Simulation Database" isSimulation='1' default="yes" id1="FMI_HYBRID" xml:id="FMI_HYBRID"/> | |
6 | + <dataCenter name="FMI_GUMICS" desc="FMI MHD simulation database" isSimulation='1' default="yes" id1="FMI_GUMICS" xml:id="FMI_GUMICS"/> | |
7 | + <!--<dataCenter name="SINP" desc="Paraboloid model calculates the magnetic fields in the Earth's magnetosphere depending on external conditions in solar wind and on geomagnetic activity level" isSimulation='1' default="yes" id1="SINP" xml:id="SINP"/>--> | |
8 | + <dataCenter name="LESIA" desc="LESIA MASER" default="yes" id1="LESIA" isSimulation='1' xml:id="LESIA"/> | |
9 | + <!--<dataCenter name="CDPP" desc="CCMC BATSRUS with RCM v8.01" default="yes" id1="CCMC" isSimulation='1' xml:id="CCMC"/>--> | |
10 | + <dataCenter name="IPIM" desc="IPIM @ IRAP" default="yes" id1="IPIM" isSimulation='1' xml:id="IPIM"/> | |
11 | +</dataRoot> | |
12 | + | |
13 | + | |
... | ... |
php/RemoteDataCenter/RemoteDataCenterClientClass.php
... | ... | @@ -26,7 +26,8 @@ class RemoteDataCenterClientClass |
26 | 26 | // return -1; |
27 | 27 | // if (!$this->baseDom->load($this->baseDomName)) |
28 | 28 | // return -2; |
29 | - $this->baseDom->load($this->baseDomName); | |
29 | + if (!@$this->baseDom->load($this->baseDomName)) | |
30 | + echo 'Cannot Load base.xml for '.$this->baseID.PHP_EOL; | |
30 | 31 | |
31 | 32 | date_default_timezone_set('UTC'); |
32 | 33 | |
... | ... |
... | ... | @@ -0,0 +1,67 @@ |
1 | +<?php | |
2 | +/* | |
3 | +* Executable to get Remote Bases description from DDBase | |
4 | +* and Merge with AMDA side Bases | |
5 | +*/ | |
6 | + | |
7 | + if (!function_exists('__autoload')) { | |
8 | + function __autoload($class_name) { | |
9 | + require_once $class_name . '.php'; | |
10 | + } | |
11 | + } | |
12 | + | |
13 | + $AMDA_IHM = getenv('AMDA_IHM'); | |
14 | + | |
15 | + require_once $AMDA_IHM."/php/config.php"; | |
16 | + | |
17 | + // only "DDBASE" Bases.xml | |
18 | + if (!file_exists(DATAPATH."/RemoteData/Bases.xml")) { | |
19 | + echo 'No Bases.xml file : Will use Bases.xml from DDBase'.PHP_EOL; | |
20 | + $basesDom = new DomDocument("1.0"); | |
21 | + | |
22 | + if (!@$basesDom->load(INFOSITE."INFO/Bases.xml")) | |
23 | + exit("No Bases.xml file at DDBase/INFO ? no Remote bases at all".PHP_EOL); | |
24 | + | |
25 | + $bases = $basesDom->getElementsByTagName("dataCenter"); | |
26 | + foreach ($bases as $base) { | |
27 | + $baseId = $base->getAttribute("xml:id"); | |
28 | + | |
29 | + $baseDir = DATAPATH."/RemoteData/$baseId"; | |
30 | + $baseDirRemote = INFOSITE."INFO/bases/$baseId"; | |
31 | + | |
32 | + if (!is_dir($baseDir)) mkdir($baseDir); | |
33 | + | |
34 | + if (!copy("$baseDirRemote/base.xml", "$baseDir/base.xml")) | |
35 | + echo "Cannot copy base.xml for $baseId".PHP_EOL; | |
36 | + } | |
37 | + } | |
38 | + // Merge with existing Bases.xml | |
39 | + else { | |
40 | + $basesDom = new DomDocument("1.0"); | |
41 | + $basesDom->load(DATAPATH."/RemoteData/Bases.xml"); | |
42 | + | |
43 | + $basesDomRemote = new DomDocument("1.0"); | |
44 | + if (!@$basesDomRemote->load(INFOSITE."INFO/Bases.xml")) | |
45 | + exit("No Bases.xml file at DDBase/INFO ? IMPEX only".PHP_EOL); | |
46 | + | |
47 | + $basesRemote = $basesDomRemote->getElementsByTagName("dataCenter"); | |
48 | + | |
49 | + foreach ($basesRemote as $baseRemote) { | |
50 | + $baseId = $baseRemote->getAttribute("xml:id"); | |
51 | + // add remote base if it doesn't exist | |
52 | + if (!$basesDom->getElementById($baseId)) { | |
53 | + $baseClone = $basesDom->importNode($baseRemote); | |
54 | + $basesDom->documentElement->appendChild($baseClone); | |
55 | + $baseDir = DATAPATH."/RemoteData/$baseId"; | |
56 | + $baseDirRemote = INFOSITE."INFO/bases/$baseId"; | |
57 | + if (!is_dir($baseDir)) mkdir($baseDir); | |
58 | + | |
59 | + if (!copy("$baseDirRemote/base.xml", "$baseDir/base.xml")) | |
60 | + echo "Cannot copy base.xml for $baseId".PHP_EOL; | |
61 | + } | |
62 | + } | |
63 | + } | |
64 | + | |
65 | + $basesDom->save(DATAPATH."/RemoteData/Bases.xml"); | |
66 | + | |
67 | +?> | |
0 | 68 | \ No newline at end of file |
... | ... |
php/RemoteDataCenter/makeArgs.php
... | ... | @@ -13,7 +13,9 @@ |
13 | 13 | |
14 | 14 | require_once $AMDA_IHM."/php/config.php"; |
15 | 15 | |
16 | - if (! file_exists(DATAPATH."/RemoteData/Bases.xml")) | |
16 | + $BasesXml = $AMDA_IHM."/php/RemoteDataCenter/Bases.xml"; | |
17 | + | |
18 | + if (!file_exists($BasesXml)) | |
17 | 19 | exit('No Bases.xml file'.PHP_EOL); |
18 | 20 | |
19 | 21 | if (!defined('SimuTargetsXml')) |
... | ... | @@ -22,7 +24,7 @@ |
22 | 24 | // $simuBases = array("LATMOS", "FMI_HYBRID", "FMI_GUMICS", "LESIA"); |
23 | 25 | |
24 | 26 | $basesDom = new DomDocument("1.0"); |
25 | - $basesDom->load(DATAPATH."/RemoteData/Bases.xml"); | |
27 | + $basesDom->load($BasesXml); | |
26 | 28 | |
27 | 29 | $bases = $basesDom->getElementsByTagName("dataCenter"); |
28 | 30 | |
... | ... |
php/RemoteDataCenter/makeProxy.php
... | ... | @@ -13,8 +13,10 @@ |
13 | 13 | |
14 | 14 | require_once $AMDA_IHM."/php/config.php"; |
15 | 15 | |
16 | - if (! file_exists(DATAPATH."/RemoteData/Bases.xml")) | |
17 | - exit('No Bases.xml file'.PHP_EOL); | |
16 | + $BasesXml = $AMDA_IHM."/php/RemoteDataCenter/Bases.xml"; | |
17 | + | |
18 | + if (!file_exists($BasesXml)) | |
19 | + exit('No Bases.xml file for IMPEX'.PHP_EOL); | |
18 | 20 | |
19 | 21 | if (!defined('SimuTargetsXml')) |
20 | 22 | exit('SimuTargetsXml is not defined in config.php'.PHP_EOL); |
... | ... | @@ -22,7 +24,7 @@ |
22 | 24 | if (file_exists(SimuTargetsXml)) rename(SimuTargetsXml, SimuTargetsXml.".bak"); |
23 | 25 | |
24 | 26 | $basesDom = new DomDocument("1.0"); |
25 | - $basesDom->load(DATAPATH."/RemoteData/Bases.xml"); | |
27 | + $basesDom->load($BasesXml); | |
26 | 28 | |
27 | 29 | $bases = $basesDom->getElementsByTagName("dataCenter"); |
28 | 30 | |
... | ... | @@ -47,5 +49,4 @@ |
47 | 49 | } |
48 | 50 | } |
49 | 51 | } |
50 | - | |
51 | 52 | ?> |
52 | 53 | \ No newline at end of file |
... | ... |
php/RemoteDataCenter/makeRemoteParamInternal.php
... | ... | @@ -12,17 +12,7 @@ |
12 | 12 | $AMDA_IHM = getenv('AMDA_IHM'); |
13 | 13 | |
14 | 14 | require_once $AMDA_IHM."/php/config.php"; |
15 | - | |
16 | - if (! file_exists(DATAPATH."/RemoteData/Bases.xml")) | |
17 | - exit('No Bases.xml file'.PHP_EOL); | |
18 | 15 | |
19 | - $basesDom = new DomDocument("1.0"); | |
20 | - $basesDom->load(DATAPATH."/RemoteData/Bases.xml"); | |
21 | - | |
22 | - $bases = $basesDom->getElementsByTagName("dataCenter"); | |
23 | - | |
24 | - // $bases = array("IPIM", "LATMOS", "FMI_HYBRID", "FMI_GUMICS", "SINP", "LESIA"); | |
25 | - | |
26 | 16 | $center = new THEMIS(); |
27 | 17 | |
28 | 18 | $center->makeAllParams(); |
... | ... |