function getCloudService($jsonParams)
 {
     $arg1 = 'providername';
     $accountprovider = $jsonParams->{$arg1};
     loghandler(INFO, "Connecting to provider:" . $accountprovider);
     $arg10 = 'cloudproviders';
     $cloudproviders = $jsonParams->{$arg10};
     $providerArray = json_decode($cloudproviders);
     $password = $providerArray->{$accountprovider}->password;
     $serverurl = "server name";
     $server = $providerArray->{$accountprovider}->{$serverurl};
     $username = "******";
     $user = $providerArray->{$accountprovider}->{$username};
     $this->orgName = $providerArray->{$accountprovider}->Organisation;
     $datacenter = "Data center";
     $this->vdc = $providerArray->{$accountprovider}->{$datacenter};
     // Initialize parameters
     $httpConfig = array('ssl_verify_peer' => false, 'ssl_verify_host' => false);
     $sdkversion = "5.5";
     $auth = array('username' => $user, 'password' => $password);
     // Create a service object";
     $service = VMware_VCloud_SDK_Service::getService();
     try {
         // Login to the service portal, parameters are set from command line
         $service->login($server, $auth, $httpConfig, $sdkversion);
         $serv = new VMWareService();
         $serv->setService($service);
         $serv->setOrganisation($this->orgName);
         $serv->setDataCenter($this->vdc);
         $serv->setProviderName($accountprovider);
         return $serv;
     } catch (Exception $se) {
         $message = $se->getMessage();
         trigger_error($message, E_USER_ERROR);
     }
     return null;
 }
    }
    // compare two certificate as string
    if (strcmp($encodeddata1, $encodeddata2) == 0) {
        echo "\n\nValidation of certificates is successful.\n\n";
        $flag = true;
    } else {
        echo "\n\nCertification Failed.\n";
        $flag = false;
    }
}
if ($flag == true) {
    if (!isset($certPath)) {
        echo "\n\nIgnoring the Certificate Validation --Fake certificate - DO NOT DO THIS IN PRODUCTION.\n\n";
    }
    // login
    $service = VMware_VCloud_SDK_Service::getService();
    $service->login($server, array('username' => $user, 'password' => $pswd), $httpConfig, $sdkversion);
    // create an SDK Org object
    $orgRefs = $service->getOrgRefs($orgName);
    if (0 == count($orgRefs)) {
        exit("No organization with name {$orgName} is found\n");
    }
    $orgRef = $orgRefs[0];
    $sdkOrg = $service->createSDKObj($orgRef);
    // create an SDK vDC object
    $vdcRefs = $sdkOrg->getVdcRefs($vdcName);
    if (0 == count($vdcRefs)) {
        exit("No vDC with name {$vdcName} is found\n");
    }
    $vdcRef = $vdcRefs[0];
    $sdkVdc = $service->createSDKObj($vdcRef);
    // compare two certificate as string
    if (strcmp($encodeddata1, $encodeddata2) == 0) {
        echo "\n\nValidation of certificates is successful.\n\n";
        $flag = true;
    } else {
        echo "\n\nCertification Failed.\n";
        $flag = false;
    }
}
if ($flag == true) {
    if (!isset($certPath)) {
        echo "\n\nIgnoring the Certificate Validation --Fake certificate - DO NOT DO THIS IN PRODUCTION.\n\n";
    }
    // vCloud login
    $vcloudClient1 = VMware_VCloud_SDK_Service::getService();
    $vcloudClient2 = VMware_VCloud_SDK_Service::getService();
    echo "Note 1 : Every Authenticated VcloudClient instance gets a seperate token";
    // client 1 login
    try {
        $vcloudClient1->login($server, array('username' => $user, 'password' => $pswd), $httpConfig, $sdkversion);
        echo "\n\n VcloudClient 1\n";
        echo " Login Successful\n";
        echo " Token - " . $vcloudClient1->getToken();
        echo "\n " . $vcloudClient1->createSDKAdminObj()->getVCloud()->getDescription();
    } catch (Exception $e) {
        $errMessage = VMware_VCloud_SDK_Helper::getObjByXml($e->getMessage());
        echo $errMessage->get_majorErrorCode() . ' : ' . $errMessage->get_message() . "\n";
    }
    // client 2 login
    try {
        $vcloudClient2->login($server, array('username' => $user, 'password' => $pswd), $httpConfig, $sdkversion);