summaryrefslogtreecommitdiff
path: root/server/core
diff options
context:
space:
mode:
Diffstat (limited to 'server/core')
-rwxr-xr-xserver/core/App.php17
-rwxr-xr-xserver/core/ErrorManagement.php4
-rwxr-xr-xserver/core/Identity.php221
3 files changed, 210 insertions, 32 deletions
diff --git a/server/core/App.php b/server/core/App.php
index ff2e1af..babb3d9 100755
--- a/server/core/App.php
+++ b/server/core/App.php
@@ -64,15 +64,14 @@ class App{
$this->setOutput("token", $this->tokenClass->getBackup());
}catch(BadResponseError $e){
- var_dump($e);
- }catch(UserInputError $e){
- var_dump($e);
- }catch(BaseError $e){
- var_dump($e);
- exit();
- }catch(NotImplementedError $e){
- var_dump($e);
- }
+ $this->errorClass->BadResponseHandler($e);
+ }catch(UserInputError $e){
+ $this->errorClass->UserInputHandler($e);
+ }catch(BaseError $e){
+ $this->errorClass->BaseErrorHandler($e);
+ }catch(NotImplementedError $e){
+ $this->errorClass->NotImplementedHandler($e);
+ }
}
diff --git a/server/core/ErrorManagement.php b/server/core/ErrorManagement.php
index ebd5abe..6bff61f 100755
--- a/server/core/ErrorManagement.php
+++ b/server/core/ErrorManagement.php
@@ -22,11 +22,11 @@ Class errorManagement{
}
public function BadResponseHandler($error){
-
+ $this->app->setOutput("Error", "Erreur Interne, Merci de contacter un administrateur!");
}
public function NotImplementedHandler($error){
-
+ $this->app->setOutput("Error", "Erreur Interne, Merci de contacter un administrateur!");
}
public function UserInputHandler($error){
diff --git a/server/core/Identity.php b/server/core/Identity.php
index df07f5d..7ad238b 100755
--- a/server/core/Identity.php
+++ b/server/core/Identity.php
@@ -53,10 +53,10 @@ class identity implements Core{
* Create a secret/access pair for use with ec2 style auth.
* This operation will generates a new set of credentials that map the user/project pair.
*
- * @param JsonString $blob credentials information with this structure for ec2: "{\"access\":\"181920\",\"secret\":\"secretKey\"}"
- * @param String $projectId project's UUID
- * @param String $type Type of credential : ec2, cert...
- * @param String $userId Id of the user which own the credential
+ * @param JsonString $blob Required credentials information with this structure for ec2: "{\"access\":\"181920\",\"secret\":\"secretKey\"}"
+ * @param String $projectId Required project's UUID
+ * @param String $type Required Type of credential : ec2, cert...
+ * @param String $userId Required Id of the user which own the credential
*
* @return void
*/
@@ -69,6 +69,7 @@ class identity implements Core{
if(!isset($blob) || !isset($projectId) || !isset($type) || !isset($userId)){
$this->app->setOutput("Error", "Parameters Incorrect");
+ return;
}
try{
@@ -76,6 +77,8 @@ class identity implements Core{
$opt = array('blob' => $blob, 'projectId' => $projectId, 'type' => $type, 'userId' => $userId);
$res = $this->libClass->createCredential($opt);
+ //TODO parse answer
+
}catch(BadResponseError $e){
$this->app->getErrorInstance->BadResponseHandler($e);
}catch(UserInputError $e){
@@ -115,13 +118,17 @@ class identity implements Core{
/**
* Retrieve a user’s access/secret pair by the access key.
*
- * @param String $credentialId credential id for which it retrieve the details
+ * @param String $credentialId Required credential id for which it retrieve the details
*
* @return void
*/
$credentials["showCredential"] = function(){
$credentId = $this->app->getPostParam("credentialId");
+ if(!isset($credentId)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ }
+
try{
$cred = $this->libClass->getCredential($credentId);
@@ -144,93 +151,265 @@ class identity implements Core{
/**
* Update a user’s access/secret pair.
*
- * @throws [Type] [<description>]
+ * @param String $credentialId Required credential id to update
+ * @param JsonString $blob Required credentials information with this structure for ec2: "{\"access\":\"181920\",\"secret\":\"secretKey\"}"
+ * @param String $type Required Type of credential : ec2, cert...
*
* @return void
*/
$credentials["updateCredential"] = function(){
- $credential = $identity->getCredential('credentialId');
+
+ $credentId = $this->app->getPostParam("credentialId");
+ $blob = $this->app->getPostParam("blob");
+ $type = $this->app->getPostParam("type");
+
+ if(!isset($blob) || !isset($credentId) || !isset($type)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ }
+
+
+ try{
+
+ $credential = $this->libClass->getCredential($credentId);
-$credential->type = 'foo';
-$credential->blob = 'bar';
+ $credential->type = $type;
+ $credential->blob = $blob;
-$credential->update();
-
+ $credential->update();
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**
* Delete a user’s access/secret pair.
*
- * @throws [Type] [<description>]
+ * @param String $credentialId Required credential id to delete
*
* @return void
*/
$credentials["deleteCredential"] = function(){
- $credential = $identity->getCredential('credentialId');
-$credential->delete();
- }
+ $credentId = $this->app->getPostParam("credentialId");
+
+ if(!isset($credentId)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ }
+
+ try{
+
+ $credential = $this->libClass->getCredential($credentId);
+ $credential->delete();
+
+ //TODO parse answer
+
+ }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);
+ }
+ }-
$domains = array();
/**
* Add a domain to an OpenStack instance.
*
- * @throws [Type] [<description>]
+ * @param String $desc Optional Domain Description
+ * @param String $enabled Optional Domain enabled or not : value true or false
+ * @param String $name Required Domain Name
*
* @return void
*/
$domains["addDomain"] = function(){
+ $description = $this->app->getPostParam("desc");
+ $enabled = $this->app->getPostParam("enabled");
+ $name = $this->app->getPostParam("name");
+
+ if(!isset($name)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ return;
+ }
+
+ if(isset($enabled) && isset($description))
+ $opt = array('description' => $description, 'enabled' => $enabled, 'name' => $name);
+ elseif(isset($enabled))
+ $opt = array('enabled' => $enabled, 'name' => $name);
+ elseif(isset($description))
+ $opt = array('description' => $description, 'name' => $name);
+ else
+ $opt = array('name' => $name);
+
+ try{
+
+ $res = $this->libClass->createCredential($opt);
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**
* Retrieve the different domain's list.
*
- * @throws [Type] [<description>]
- *
* @return void
*/
$domains["listDomains"] = function(){
+ try{
+
+ $this->libClass->listDomains()
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**
* Retrieve the details of a given domain.
*
- * @throws [Type] [<description>]
+ * @param String $domainId Required Domain id for which it retrieve the details
*
* @return void
*/
$domains["showDomain"] = function(){
+ $domId = $this->app->getPostParam("domainId");
+
+ if(!isset($domId)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ }
+ try{
+
+ $domain = $this->libClass->getDomain($domId);
+ $domain->retrieve();
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**
* Update the given domain.
*
- * @throws [Type] [<description>]
+ * @param String $domainId Required domain id to update
+ * @param String $desc Optional Domain Description
+ * @param String $enabled Optional Domain enabled or not : value true or false
+ * @param String $name Required Domain Name
*
* @return void
*/
$domains["updateDomain"] = function(){
+ $domId = $this->app->getPostParam("domainId");
+ $description = $this->app->getPostParam("desc");
+ $enabled = $this->app->getPostParam("enabled");
+ $name = $this->app->getPostParam("name");
+
+ if(!isset($domId)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ return;
+ }
+
+ try{
+
+ $domain = $this->libClass->getDomain($domId);
+
+ if(isset($name))
+ $domain->name = $name;
+ if(isset($enabled))
+ $domain->enabled = $enabled;
+ if(isset($description))
+ $domain->description = $description;
+
+ $domain->update();
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**
* Delete the given domain.
*
- * @throws [Type] [<description>]
+ * @param String $domainId Required Domain id to delete
*
* @return void
*/
$domains["deleteDomain"] = function(){
+ $domId = $this->app->getPostParam("domainId");
+ if(!isset($domId)){
+ $this->app->setOutput("Error", "Parameters Incorrect");
+ }
+
+ try{
+
+ $domain = $this->libClass->getDomain($domId);
+ $domain->delete();
+
+ //TODO parse answer
+
+ }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);
+ }
}
/**