Module: Familia::Connection::Middleware
- Included in:
- Familia::Connection
- Defined in:
- lib/familia/connection/middleware.rb
Instance Attribute Summary collapse
-
#enable_database_counter ⇒ Boolean
Whether Database command counter is enabled.
-
#enable_database_logging ⇒ Boolean
Whether Database command logging is enabled.
Instance Method Summary collapse
-
#clear_fiber_connection! ⇒ Object
Clears the fiber-local connection.
-
#increment_middleware_version! ⇒ Object
Increments the middleware version, invalidating all cached connections.
-
#middleware_version ⇒ Integer
Current middleware version for cache invalidation.
-
#set_fiber_connection(connection) ⇒ Object
Sets a versioned fiber-local connection.
Instance Attribute Details
#enable_database_counter ⇒ Boolean
Returns Whether Database command counter is enabled.
12 13 14 |
# File 'lib/familia/connection/middleware.rb', line 12 def enable_database_counter @enable_database_counter end |
#enable_database_logging ⇒ Boolean
Returns Whether Database command logging is enabled.
9 10 11 |
# File 'lib/familia/connection/middleware.rb', line 9 def enable_database_logging @enable_database_logging end |
Instance Method Details
#clear_fiber_connection! ⇒ Object
Clears the fiber-local connection
32 33 34 35 |
# File 'lib/familia/connection/middleware.rb', line 32 def clear_fiber_connection! Fiber[:familia_connection] = nil Familia.trace :FIBER_CONNECTION, nil, 'Cleared' if Familia.debug? end |
#increment_middleware_version! ⇒ Object
Increments the middleware version, invalidating all cached connections
20 21 22 23 |
# File 'lib/familia/connection/middleware.rb', line 20 def increment_middleware_version! @middleware_version += 1 Familia.trace :MIDDLEWARE_VERSION, nil, "Incremented to #{@middleware_version}" if Familia.debug? end |
#middleware_version ⇒ Integer
Returns Current middleware version for cache invalidation.
15 16 17 |
# File 'lib/familia/connection/middleware.rb', line 15 def middleware_version @middleware_version end |
#set_fiber_connection(connection) ⇒ Object
Sets a versioned fiber-local connection
26 27 28 29 |
# File 'lib/familia/connection/middleware.rb', line 26 def set_fiber_connection(connection) Fiber[:familia_connection] = [connection, middleware_version] Familia.trace :FIBER_CONNECTION, nil, "Set with version #{middleware_version}" if Familia.debug? end |