Sha256: 7cedcaf8bf5fb4a272d872ec0762866af1c375277a117745c2fce0f8c60d90df

Contents?: true

Size: 1.5 KB

Versions: 71

Compression:

Stored size: 1.5 KB

Contents

require 'oauth/helper'
require 'oauth/consumer'

module OAuth
  # This is mainly used to create consumer credentials and can pretty much be ignored if you want to create your own
  class Server
    include OAuth::Helper
    attr_accessor :base_url

    @@server_paths = {
      :request_token_path => "/oauth/request_token",
      :authorize_path     => "/oauth/authorize",
      :access_token_path  => "/oauth/access_token"
    }

    # Create a new server instance
    def initialize(base_url, paths = {})
      @base_url = base_url
      @paths = @@server_paths.merge(paths)
    end

    def generate_credentials
      [generate_key(16), generate_key]
    end

    def generate_consumer_credentials(params = {})
      Consumer.new(*generate_credentials)
    end

    # mainly for testing purposes
    def create_consumer
      creds = generate_credentials
      Consumer.new(creds[0], creds[1],
        {
          :site               => base_url,
          :request_token_path => request_token_path,
          :authorize_path     => authorize_path,
          :access_token_path  => access_token_path
        })
    end

    def request_token_path
      @paths[:request_token_path]
    end

    def request_token_url
      base_url + request_token_path
    end

    def authorize_path
      @paths[:authorize_path]
    end

    def authorize_url
      base_url + authorize_path
    end

    def access_token_path
      @paths[:access_token_path]
    end

    def access_token_url
      base_url + access_token_path
    end
  end
end

Version data entries

71 entries across 68 versions & 24 rubygems

Version Path
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/oauth-0.5.6/lib/oauth/server.rb
oauth-0.5.6 lib/oauth/server.rb
oauth-0.5.5 lib/oauth/server.rb
tdiary-5.0.8 vendor/bundle/gems/oauth-0.5.4/lib/oauth/server.rb
oauth-0.5.4 lib/oauth/server.rb
tdiary-5.0.5 vendor/bundle/gems/oauth-0.5.3/lib/oauth/server.rb
tdiary-5.0.5 vendor/bundle/gems/tdiary-5.0.4/vendor/bundle/gems/oauth-0.5.1/lib/oauth/server.rb
tdiary-5.0.5 vendor/bundle/gems/oauth-0.5.1/lib/oauth/server.rb
oauth-0.5.3 lib/oauth/server.rb
oauth-0.5.2 lib/oauth/server.rb
tdiary-5.0.4 vendor/bundle/gems/oauth-0.5.1/lib/oauth/server.rb
oauth-0.5.1 lib/oauth/server.rb
oauth-0.5.0 lib/oauth/server.rb
tdiary-4.2.1 vendor/bundle/ruby/2.2.0/gems/oauth-0.4.7/lib/oauth/server.rb
tdiary-4.2.1 vendor/bundle/ruby/2.3.0/gems/oauth-0.4.7/lib/oauth/server.rb
oauth-ap-0.4.8 lib/oauth/server.rb
greut-oauth-0.3.6 lib/oauth/server.rb
jwhitmire-oauth-0.3.6.1 lib/oauth/server.rb
metavida-oauth-0.3.2.1 lib/oauth/server.rb
metavida-oauth-0.3.2 lib/oauth/server.rb