Sha256: 2fbc588970c92368389a3680291b793f7666506e8c5192a6533f1ce9eb1ba7be

Contents?: true

Size: 1.19 KB

Versions: 19

Compression:

Stored size: 1.19 KB

Contents

require "mongo"
require "openssl"
require "rack/oauth2/server/errors"
require "rack/oauth2/server/utils"

module Rack
  module OAuth2
    class Server

      class << self
        # A Mongo::DB object.
        attr_accessor :database
        
        # Create new instance of the klass and populate its attributes.
        def new_instance(klass, fields)
          return unless fields
          instance = klass.new
          fields.each do |name, value|
            instance.instance_variable_set :"@#{name}", value
          end
          instance
        end

        # Long, random and hexy.
        def secure_random
          OpenSSL::Random.random_bytes(32).unpack("H*")[0]
        end
        
        # @private
        def create_indexes(&block)
          if block
            @create_indexes ||= []
            @create_indexes << block
          elsif @create_indexes
            @create_indexes.each do |block|
              block.call
            end
            @create_indexes = nil
          end
        end
      end

    end
  end
end


require "rack/oauth2/models/client"
require "rack/oauth2/models/auth_request"
require "rack/oauth2/models/access_grant"
require "rack/oauth2/models/access_token"

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
rack-oauth2-server-2.2.1 lib/rack/oauth2/models.rb
rack-oauth2-server-2.2.0 lib/rack/oauth2/models.rb
rack-oauth2-server-2.1.0 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.1 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta6 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta5 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta4 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta3 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta2 lib/rack/oauth2/models.rb
rack-oauth2-server-2.0.0.beta lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.6 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.5 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.4 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.3 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.2 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.1 lib/rack/oauth2/models.rb
rack-oauth2-server-1.4.0 lib/rack/oauth2/models.rb
rack-oauth2-server-1.3.1 lib/rack/oauth2/models.rb