Sha256: b077b10f9096b2856a398259f3d41644baf45ffa2ae3ae4fbab3ef56e0ba535c

Contents?: true

Size: 921 Bytes

Versions: 2

Compression:

Stored size: 921 Bytes

Contents

require 'doorkeeper/orm/mongoid2/concerns/scopes'

module Doorkeeper
  class AccessToken
    include Mongoid::Document
    include Mongoid::Timestamps

    include AccessTokenMixin
    include Models::Mongoid2::Scopes

    self.store_in :oauth_access_tokens

    field :resource_owner_id, type: Integer
    field :application_id, type: BSON::ObjectId
    field :token, type: String
    field :refresh_token, type: String
    field :expires_in, type: Integer
    field :revoked_at, type: DateTime

    index :token, unique: true
    index :refresh_token, unique: true, sparse: true

    def self.delete_all_for(application_id, resource_owner)
      where(application_id: application_id,
            resource_owner_id: resource_owner.id).delete_all
    end
    private_class_method :delete_all_for

    def self.order_method
      :order_by
    end
    def self.created_at_desc
      [:created_at, :desc]
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
doorkeeper-2.0.0.rc2 lib/doorkeeper/orm/mongoid2/access_token.rb
doorkeeper-2.0.0.alpha1 lib/doorkeeper/orm/mongoid2/access_token.rb