Scalr\Tests\Functional\Api\V2\ApiTest::getGlobalVariable PHP Method

getGlobalVariable() public method

Get GV
public getGlobalVariable ( string $criteria, array $params ) : array
$criteria string search criteria
$params array query params
return array
    public function getGlobalVariable($criteria, $params)
    {
        $roleId = 0;
        $farmId = 0;
        $farmRoleId = 0;
        $serverId = 0;
        $scope = ScopeInterface::SCOPE_ENVIRONMENT;
        if (isset($params['farmId'])) {
            $scope = ScopeInterface::SCOPE_FARM;
            $farmId = $params['farmId'];
        } else {
            if (isset($params['farmRoleId'])) {
                /* @var  $farmRole FarmRole */
                $farmRole = FarmRole::findOne([['id' => $params['farmRoleId']]]);
                $farmRoleId = $farmRole->id;
                $roleId = $farmRole->roleId;
                $farmId = $farmRole->farmId;
                $scope = ScopeInterface::SCOPE_FARMROLE;
            } else {
                if (isset($params['roleId'])) {
                    $roleId = $params['roleId'];
                    $scope = ScopeInterface::SCOPE_ROLE;
                }
            }
        }
        $variableScopeIdentity = [$roleId, $farmId, $farmRoleId, $serverId];
        $varName = $criteria;
        $gv = new Scalr_Scripting_GlobalVariables($this->getUser()->getAccountId(), $this->getEnvironment()->id, $scope);
        $variable = [];
        $list = $gv->getValues(...$variableScopeIdentity);
        foreach ($list as $var) {
            if (!empty($var['current']['name']) && $var['current']['name'] == $varName || !empty($var['default']['name']) && $var['default']['name'] == $varName) {
                $variable = $var;
                break;
            }
        }
        return $variable;
    }