lib/doorkeeper/models/concerns/revocable.rb in doorkeeper-4.2.0 vs lib/doorkeeper/models/concerns/revocable.rb in doorkeeper-4.2.5

- old
+ new

@@ -1,23 +1,41 @@ module Doorkeeper module Models module Revocable + # Revokes the object (updates `:revoked_at` attribute setting its value + # to the specific time). + # + # @param clock [Time] time object + # def revoke(clock = Time) update_attribute :revoked_at, clock.now.utc end + # Indicates whether the object has been revoked. + # + # @return [Boolean] true if revoked, false in other case + # def revoked? !!(revoked_at && revoked_at <= Time.now.utc) end + # Revokes token with `:refresh_token` equal to `:previous_refresh_token` + # and clears `:previous_refresh_token` attribute. + # def revoke_previous_refresh_token! return unless refresh_token_revoked_on_use? old_refresh_token.revoke if old_refresh_token update_attribute :previous_refresh_token, "" end private + # Searches for Access Token record with `:refresh_token` equal to + # `:previous_refresh_token` value. + # + # @return [Doorkeeper::AccessToken, nil] + # Access Token record or nil if nothing found + # def old_refresh_token @old_refresh_token ||= AccessToken.by_refresh_token(previous_refresh_token) end