class
Task::CleanOauth
- Task::CleanOauth
- Task
- Reference
- Object
Overview
Cleans up OAuth data.
This task implements the following cleanup rules:
Expired Access Tokens:
- Delete access tokens where "expires_at < current_time"
Inactive Clients: Note: Manually created clients are always preserved.
- Delete clients created more than 1 month ago AND never accessed
- Delete clients that were last accessed more than four months ago
Included Modules
Defined in:
models/task/clean_oauth.crConstant Summary
-
Log =
::Log.for(self)
Constructors
-
.current_instance : self
Returns the current active instance of this singleton task.
Class Method Summary
-
.ensure_scheduled
Ensures the singleton task is scheduled.
-
.find_active : self | Nil
Finds the active instance.
Instance Method Summary
Instance methods inherited from class Task
backtrace : Array(String) | Nil
backtrace,
backtrace=(backtrace : Array(String) | Nil)
backtrace=,
complete : Bool
complete,
complete=(complete : Bool)
complete=,
gone?
gone?,
last_attempt_at : Time | Nil
last_attempt_at,
last_attempt_at=(last_attempt_at : Time | Nil)
last_attempt_at=,
next_attempt_at : Time | Nil
next_attempt_at,
next_attempt_at=(next_attempt_at : Time | Nil)
next_attempt_at=,
past_due?(now = Time.utc)
past_due?,
perform
perform,
runnable?
runnable?,
running : Bool
running,
running=(running : Bool)
running=,
schedule(next_attempt_at = nil)
schedule,
source_iri : String
source_iri,
source_iri=(source_iri : String)
source_iri=,
subject_iri : String
subject_iri,
subject_iri=(subject_iri : String)
subject_iri=
Class methods inherited from class Task
all_subtypes
all_subtypes,
clean_up_running_tasks
clean_up_running_tasks,
destroy_old_tasks
destroy_old_tasks,
priority
priority,
priority=(priority : Int32)
priority=,
scheduled(now = Time.utc, reserve = false)
scheduled
Instance methods inherited from module Ktistec::Model::Polymorphic
_validate_type
_validate_type,
as_a(as _as : T.class) : T forall T
as_a,
type : String
type,
type=(type : String)
type=
Macros inherited from module Ktistec::Model::Polymorphic
find(_id id, *, as _as)find(*, as _as, **options) find
Instance methods inherited from module Ktistec::Model::Common
created_at : Time
created_at,
created_at=(created_at : Time)
created_at=,
updated_at : Time
updated_at,
updated_at=(updated_at : Time)
updated_at=
Instance methods inherited from module Ktistec::Model
==(other : self)==(other) ==, _run_validations _run_validations, _save_model(skip_validation = false) _save_model, _serialize_graph(nodes, association = nil, index = nil, skip_associated = false) _serialize_graph, assign(properties : Hash(String, Any), *, _strict : Bool = false) forall Any
assign(*, _strict : Bool = false, **properties) assign, changed!(*properties : Symbol) changed!, changed?
changed?(*properties : Symbol) changed?, clear_changed!
clear_changed!(*properties : Symbol) clear_changed!, destroy destroy, destroyed? destroyed?, errors errors, hash(hasher) hash, id : Int64 | Nil id, id=(id : Int64 | Nil) id=, inspect(io : IO) inspect, new_record? new_record?, reload! reload!, save(skip_validation = false, skip_associated = false) save, serialize_graph(skip_associated = false) serialize_graph, table_name table_name, to_h to_h, to_json(json : JSON::Builder) to_json, to_s(io : IO) to_s, update_property(property, value) update_property, valid?(skip_associated = false) valid?, validate(skip_associated = false) validate
Constructor methods inherited from module Ktistec::Model
new(properties : Hash(String, Any), *, _strict : Bool = false) forall Anynew(*, _strict : Bool = false, **properties) new
Macros inherited from module Ktistec::Model
belongs_to(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil)
belongs_to,
derived(decl, *, aliased_to)
derived,
has_many(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil)
has_many,
has_one(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil)
has_one,
validates(property, &block)
validates
Constructor Detail
def self.current_instance : self
#
Returns the current active instance of this singleton task.
Creates and saves a new instance if no active instance exists.
Class Method Detail
def self.ensure_scheduled
#
Ensures the singleton task is scheduled.
Typically called on server startup to ensure singleton tasks are created and scheduled.
def self.find_active : self | Nil
#
Finds the active instance.
Returns nil
if no active instance exists.