Class: Sparkplug::Cachers::Memory
- Defined in:
- lib/sparkplug/cachers/memory.rb
Overview
Reads sparkline data from CSV files. Only the first line of numbers are read. Requests for “/sparks/stats.csv” will pass a data_path of “stats.csv”
Instance Attribute Summary collapse
-
#cache_time ⇒ Object
Returns the value of attribute cache_time.
-
#sparklines ⇒ Object
Returns the value of attribute sparklines.
Attributes inherited from Abstract
Instance Method Summary collapse
- #exists? ⇒ Boolean
-
#initialize(cache_time = 86400) ⇒ Memory
constructor
A new instance of Memory.
- #save(data, options) ⇒ Object
- #serve(app, headers = {}) ⇒ Object
- #size ⇒ Object
- #stream {|@sparklines| ... } ⇒ Object
- #updated_at ⇒ Object
Methods inherited from Abstract
Constructor Details
#initialize(cache_time = 86400) ⇒ Memory
Returns a new instance of Memory.
10 11 12 13 |
# File 'lib/sparkplug/cachers/memory.rb', line 10 def initialize(cache_time = 86400) @cache_time = cache_time super() end |
Instance Attribute Details
#cache_time ⇒ Object
Returns the value of attribute cache_time.
8 9 10 |
# File 'lib/sparkplug/cachers/memory.rb', line 8 def cache_time @cache_time end |
#sparklines ⇒ Object
Returns the value of attribute sparklines.
8 9 10 |
# File 'lib/sparkplug/cachers/memory.rb', line 8 def sparklines @sparklines end |
Instance Method Details
#exists? ⇒ Boolean
19 20 21 |
# File 'lib/sparkplug/cachers/memory.rb', line 19 def exists? @sparklines end |
#save(data, options) ⇒ Object
27 28 29 |
# File 'lib/sparkplug/cachers/memory.rb', line 27 def save(data, ) @sparklines = create_sparklines(data, ) end |
#serve(app, headers = {}) ⇒ Object
35 36 37 38 |
# File 'lib/sparkplug/cachers/memory.rb', line 35 def serve(app, headers = {}) headers['Cache-Control'] = "public, max-age=#{@cache_time}" super(app, headers) end |
#size ⇒ Object
15 16 17 |
# File 'lib/sparkplug/cachers/memory.rb', line 15 def size @sparklines ? @sparklines.size : 0 end |
#stream {|@sparklines| ... } ⇒ Object
31 32 33 |
# File 'lib/sparkplug/cachers/memory.rb', line 31 def stream yield @sparklines end |
#updated_at ⇒ Object
23 24 25 |
# File 'lib/sparkplug/cachers/memory.rb', line 23 def updated_at Time.now.utc end |