Class: Surrender::BucketPolicy
- Inherits:
-
Object
- Object
- Surrender::BucketPolicy
- Defined in:
- lib/surrender/bucket_policy.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#count ⇒ Object
readonly
Returns the value of attribute count.
-
#memo ⇒ Object
readonly
Returns the value of attribute memo.
Instance Method Summary collapse
- #add(filename, date) ⇒ Object
- #deleteable?(filename) ⇒ Boolean
-
#initialize(count) ⇒ BucketPolicy
constructor
A new instance of BucketPolicy.
- #keys ⇒ Object
Constructor Details
#initialize(count) ⇒ BucketPolicy
Returns a new instance of BucketPolicy.
3 4 5 6 |
# File 'lib/surrender/bucket_policy.rb', line 3 def initialize(count) @count = count @memo = Hash.new end |
Instance Attribute Details
#count ⇒ Object (readonly)
Returns the value of attribute count.
8 9 10 |
# File 'lib/surrender/bucket_policy.rb', line 8 def count @count end |
#memo ⇒ Object (readonly)
Returns the value of attribute memo.
8 9 10 |
# File 'lib/surrender/bucket_policy.rb', line 8 def memo @memo end |
Instance Method Details
#add(filename, date) ⇒ Object
10 11 12 13 |
# File 'lib/surrender/bucket_policy.rb', line 10 def add(filename, date) memo[bucket(date)] = filename memo.delete(memo.keys.first) if memo.size > count end |
#deleteable?(filename) ⇒ Boolean
15 16 17 |
# File 'lib/surrender/bucket_policy.rb', line 15 def deleteable?(filename) !memo.values.include?(filename) end |
#keys ⇒ Object
19 20 21 |
# File 'lib/surrender/bucket_policy.rb', line 19 def keys memo.keys end |