public listCapabilities ( Scalr\Service\CloudStack\DataType\PaginationType $pagination = null ) : null | Scalr\Service\CloudStack\DataType\CapabilityData | ||
$pagination | Scalr\Service\CloudStack\DataType\PaginationType | Pagination |
return | null | Scalr\Service\CloudStack\DataType\CapabilityData |
public function listCapabilities(PaginationType $pagination = null)
{
$result = null;
$args = array();
if ($pagination !== null) {
$args = $pagination->toArray();
}
$response = $this->getClient()->call('listCapabilities', $args);
if ($response->hasError() === false) {
$resultObject = $response->getResult();
if (isset($resultObject->capability)) {
$result = $this->_loadCapabilityData($resultObject->capability);
}
}
return $result;
}
private function getCloudStackDetails($platform) { $ccProps = $this->env->cloudCredentials($platform)->properties; $params = array(); $params["{$platform}.is_enabled"] = true; $params[Entity\CloudCredentialsProperty::CLOUDSTACK_API_URL] = $ccProps[Entity\CloudCredentialsProperty::CLOUDSTACK_API_URL]; $params[Entity\CloudCredentialsProperty::CLOUDSTACK_API_KEY] = $ccProps[Entity\CloudCredentialsProperty::CLOUDSTACK_API_KEY]; $params[Entity\CloudCredentialsProperty::CLOUDSTACK_SECRET_KEY] = $ccProps[Entity\CloudCredentialsProperty::CLOUDSTACK_SECRET_KEY] != '' ? '******' : ''; try { $cs = new CloudStack($params[Entity\CloudCredentialsProperty::CLOUDSTACK_API_URL], $params[Entity\CloudCredentialsProperty::CLOUDSTACK_API_KEY], $ccProps[Entity\CloudCredentialsProperty::CLOUDSTACK_SECRET_KEY], $platform); $params['_info'] = $cs->listCapabilities(); } catch (Exception $e) { } return $params; }