module NoBrainer::Simple::OAuth2::AccessGrant

Includes all the required API, associations, validations and callbacks

Public Class Methods

create_for(client, resource_owner, redirect_uri, scopes = nil) click to toggle source

Create a new AccessGrant object

@param client [Object] Client instance @param resource_owner [Object] ResourceOwner instance @param redirect_uri [String] Redirect URI callback @param scopes [String] set of scopes

@return [AccessGrant] AccessGrant object

# File lib/nobrainer_simple_oauth2/mixins/access_grant.rb, line 36
def self.create_for(client, resource_owner, redirect_uri, scopes = nil)
  create(
    client_id: client.id,
    resource_owner_id: resource_owner.id,
    redirect_uri: redirect_uri,
    scopes: scopes
  )
end

Public Instance Methods

setup_expiration() click to toggle source

Set lifetime for code value during creating a new record

@return clock [Time] time object

# File lib/nobrainer_simple_oauth2/mixins/access_grant.rb, line 51
def setup_expiration
  self.expires_at = Time.now.utc + ::Simple::OAuth2.config.authorization_code_lifetime if expires_at.nil?
end