Module: Familia::Features::Expiration::ClassMethods

Defined in:
lib/familia/features/expiration.rb

Instance Attribute Summary collapse

Instance Attribute Details

#default_expiration(num = nil) ⇒ Float

Get or set the default expiration time for this class

When called with an argument, sets the default expiration. When called without arguments, returns the current default expiration, checking parent classes and falling back to Familia.default_expiration.

Examples:

Set default expiration

class MyModel < Familia::Horreum
  feature :expiration
  default_expiration 1.hour
end

Get default expiration

MyModel.default_expiration  # => 3600.0

Parameters:

  • num (Numeric, nil) (defaults to: nil)

    Expiration time in seconds

Returns:

  • (Float)

    The default expiration in seconds



188
189
190
191
# File 'lib/familia/features/expiration.rb', line 188

def default_expiration(num = nil)
  @default_expiration = num.to_f unless num.nil?
  @default_expiration || parent&.default_expiration || Familia.default_expiration
end