/** * Initialise a new API request. * @param \Brush\Accounts\Developer $developer The developer account to sign the request with. * @param string $url The relative URL of the endpoint to send the request to, e.g. `api_post.php`. */ public function __construct(Developer $developer, $url) { $request = new POSTRequest(self::BASE_URL . $url); curl_setopt($request->getHandle(), CURLOPT_SSL_VERIFYPEER, false); $developer->sign($request); $this->setRequest($request); }
/** * Attach this format to a new paste request. * @param POSTRequest $request The request to add this format to. */ public function addTo(POSTRequest $request) { $request->getVariables()->set('api_paste_format', $this->getCode()); }
/** * Add the credentials contained in this object to a request. * @param \Crackle\Requests\POSTRequest $request The request to authenticate. */ public final function sign(POSTRequest $request) { $request->getVariables()->set('api_dev_key', $this->getKey()); }
/** * Authenticate a request from this user. * @param \Crackle\Requests\POSTRequest $request The request to authenticate. * @param \Brush\Accounts\Developer $developer The developer account to use if the key needs to be fetched. */ public function sign(POSTRequest $request, Developer $developer) { $request->getVariables()->set('api_user_key', $this->getKey($developer)); }
/** * Add the credentials contained in this object to a request. * @param \Crackle\Requests\POSTRequest $request The request to authenticate. */ public final function sign(POSTRequest $request) { $variables = $request->getVariables(); $variables->set('api_user_name', $this->getUsername()); $variables->set('api_user_password', $this->getPassword()); }
/** * Add the values in this paste to a new paste request. * @param \Crackle\Requests\POSTRequest $request The request to add variables to. * @param \Brush\Accounts\Developer $developer The developer that will send the request. */ protected function addTo(POSTRequest $request, Developer $developer) { $variables = $request->getVariables(); $variables->set('api_paste_name', $this->getTitle()); $variables->set('api_paste_code', $this->getContent()); $variables->set('api_paste_private', $this->getVisibility()); $this->getFormat()->addTo($request); if ($this->hasOwner()) { $this->getOwner()->sign($request, $developer); } }