Class: Rack::Sparklines::Cachers::Memory
- Defined in:
- lib/rack-sparklines/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.
11 12 13 14 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 11 def initialize(cache_time = 86400) @cache_time = cache_time super() end |
Instance Attribute Details
#cache_time ⇒ Object
Returns the value of attribute cache_time.
9 10 11 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 9 def cache_time @cache_time end |
#sparklines ⇒ Object
Returns the value of attribute sparklines.
9 10 11 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 9 def sparklines @sparklines end |
Instance Method Details
#exists? ⇒ Boolean
20 21 22 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 20 def exists? @sparklines end |
#save(data, options) ⇒ Object
28 29 30 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 28 def save(data, ) @sparklines = create_sparklines(data, ) end |
#serve(app, headers = {}) ⇒ Object
36 37 38 39 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 36 def serve(app, headers = {}) headers['Cache-Control'] = "public, max-age=#{@cache_time}" super(app, headers) end |
#size ⇒ Object
16 17 18 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 16 def size @sparklines ? @sparklines.size : 0 end |
#stream {|@sparklines| ... } ⇒ Object
32 33 34 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 32 def stream yield @sparklines end |
#updated_at ⇒ Object
24 25 26 |
# File 'lib/rack-sparklines/cachers/memory.rb', line 24 def updated_at Time.now.utc end |