public function setUp(array $params)
    {
        if (empty($params['endpoint'])) {
            throw new \RuntimeException('Parameter "endpoint" cannot be empty.');
        }

        if (empty($params['ssl_pem_path'])) {
            throw new \RuntimeException('Parameter "ssl_pem_path" cannot be empty.');
        }

        if (!is_readable($params['ssl_pem_path'])) {
            throw new \RuntimeException('"ssl_pem_path" file does not exist or is not readable.');
        }

        $this->params = $params;
    }