app->setOutput("Error", "Parameter app missing."); } $this->appCompute = $appCompute; $this->appImage = $appImage; $this->appNetwork = $appNetwork; $this->appIdentity = $appIdentity; } /** * Execute an action * * @param String $action name of another function of this class * * @return void */ public function action($action){ $this->{$action.""}(); } public function script() { appImage->createImage(); appImage->create_network(); appImage->list_network_ids(); appImage->create_subnet(); appCompute->listFlavors(); appCompute->listImages(); appCompute->createServer(); } /** * Create a new image on a new server * * @param $name the name of the new image * @param $falvor_id the id of the flavor it will be used to create the new server * * @return Image the new image created */ private function createImageOnNewServer(){ try{ /* POURRI $image = new Image($this->app); $compute = new Compute($this->app); $name = $this->app->getPostParam("name"); $falvor_id = $this->app->getPostParam("falvor_id"); // Compris entre 1 et 5 (1=petit serveur, 5=gros serveur) $opt = Array(); $opt['name'] = $name; $opt['visibility'] = 'public'; $opt['minDisk'] = 100; // A VOIR $opt['minRam'] = 128; // A VOIR $opt['protected'] = false; $this->app->setPostParam("opt", $opt); $image->action("createImage"); $res = json_decode($this->app->show(), true)["Images"]; $this->app->setPostParam("name", $name); $this->app->setPostParam("imageId", $res['id']); $this->app->setPostParam("flavorId", $falvor_id); $compute->action("createServer"); */ }catch(BadResponseError $e){ $this->app->getErrorInstance()->BadResponseHandler($e); }catch(UserInputError $e){ $this->app->getErrorInstance()->UserInputHandler($e); }catch(BaseError $e){ $this->app->getErrorInstance()->BaseErrorHandler($e); }catch(NotImplementedError $e){ $this->app->getErrorInstance()->NotImplementedHandler($e); }catch(Exception $e){ $this->app->getErrorInstance()->OtherException($e); } //$this->app->setOutput("Auto", $res); } /** * Create a new image on an existing server * * @param $name the name of the new image * @param $server_id the id of the server * * @return Image the new image created */ private function createImageOnServer(){ try{ }catch(BadResponseError $e){ $this->app->getErrorInstance()->BadResponseHandler($e); }catch(UserInputError $e){ $this->app->getErrorInstance()->UserInputHandler($e); }catch(BaseError $e){ $this->app->getErrorInstance()->BaseErrorHandler($e); }catch(NotImplementedError $e){ $this->app->getErrorInstance()->NotImplementedHandler($e); }catch(Exception $e){ $this->app->getErrorInstance()->OtherException($e); } } } ?>