Module: Doorkeeper::Models::ExpirationTimeSqlMath

Extended by:
ActiveSupport::Concern
Included in:
AccessGrantMixin, AccessTokenMixin
Defined in:
lib/doorkeeper/models/concerns/expiration_time_sql_math.rb

Defined Under Namespace

Modules: ClassMethods Classes: ExpirationTimeSqlGenerator, MySqlExpirationTimeSqlGenerator, OracleExpirationTimeSqlGenerator, PostgresExpirationTimeSqlGenerator, SqlLiteExpirationTimeSqlGenerator, SqlServerExpirationTimeSqlGenerator

Constant Summary collapse

WARNING_MESSAGE =
<<~WARNING.squish
  [DOORKEEPER] Doorkeeper doesn't support expiration time math for your database adapter.
  Records with an individual expires_in value longer than the global TTL may be incorrectly processed.
  Please add a class method `custom_expiration_time_sql` to your AccessToken/AccessGrant models/mixins to provide a custom
  SQL expression to calculate access token expiration time. See lib/doorkeeper/orm/active_record/mixins/access_token.rb
  for more details.
WARNING
ADAPTERS_MAPPING =
{
  "sqlite" => SqlLiteExpirationTimeSqlGenerator,
  "sqlite3" => SqlLiteExpirationTimeSqlGenerator,
  "postgis" => PostgresExpirationTimeSqlGenerator,
  "postgresql" => PostgresExpirationTimeSqlGenerator,
  "mysql" => MySqlExpirationTimeSqlGenerator,
  "mysql2" => MySqlExpirationTimeSqlGenerator,
  "trilogy" => MySqlExpirationTimeSqlGenerator,
  "sqlserver" => SqlServerExpirationTimeSqlGenerator,
  "oracleenhanced" => OracleExpirationTimeSqlGenerator,
}.freeze