<?php

interface OAuth2Controller {

    /**
     * Send user to a third-party service to authorize before being redirected
     *
     * @return void
     */
    public function authorizeAction();

    /**
     * Clear the previously saved request token from the preferences
     *
     * @return void
     */
    public function deauthorizeAction();

    /**
     * Called when user successfully completes third-party authorization
     * Store the returned request token for future requests
     *
     * @return void
     */
    public function redirectAction();

}