예제 #1
0
파일: exp_sys.php 프로젝트: qxj/exp-sys-toy
 private function _build()
 {
     $deploy = $this->_get_deploy();
     // get domains
     $domains = array();
     foreach ($deploy->{'domains'} as $d) {
         $domain = Domain::fromJson($d);
         $domains[$domain->getId()] = $domain;
         Logger::debug("load domain %s", $domain->toString());
     }
     // get layers
     foreach ($deploy->{'layers'} as $l) {
         $domain = $domains[$l->{'domain_id'}];
         $layer = new Layer($l->{'id'}, $domain);
         $this->_layers[$l->{'id'}] = $layer;
         Logger::debug("load layer %s", $layer->toString());
     }
     // assign experiments
     foreach ($deploy->{'experiments'} as $e) {
         $exp = Experiment::fromJson($e);
         $this->_exps[$exp->getId()] = $exp;
         $layer = $this->_layers[$exp->getLayerId()];
         $layer->assign($exp);
         Logger::debug("load exp %s", $exp->toString());
     }
     foreach ($deploy->{'parameters'} as $p) {
         $param = Parameter::fromJson($p);
         $this->_baseParams[$param->getName()] = $param->getValue();
         Logger::debug("load param %s => %s", $param->getName(), $param->getValue());
     }
 }