Class: Bucket
- Inherits:
-
Object
- Object
- Bucket
- Defined in:
- lib/quartz_flow/usagetracker.rb
Instance Attribute Summary collapse
-
#absoluteUsageAtStartOfBucket ⇒ Object
At the time this bucket was created, the value of the absolute usage for all time.
-
#criteriaData ⇒ Object
Data used by BucketChangeCriteria to determine when we need a new bucket.
-
#label ⇒ Object
Returns the value of attribute label.
-
#value ⇒ Object
The amount of usage for this bucket alone.
Instance Method Summary collapse
- #fromHash(hash) ⇒ Object
- #fromModel(bucket) ⇒ Object
-
#initialize(label = nil, criteriaData = nil, value = nil) ⇒ Bucket
constructor
A new instance of Bucket.
- #toHash ⇒ Object
- #toModel ⇒ Object
Constructor Details
#initialize(label = nil, criteriaData = nil, value = nil) ⇒ Bucket
Returns a new instance of Bucket.
4 5 6 7 8 9 |
# File 'lib/quartz_flow/usagetracker.rb', line 4 def initialize(label = nil, criteriaData = nil, value = nil) @label = label @criteriaData = criteriaData @value = value @absoluteUsageAtStartOfBucket = nil end |
Instance Attribute Details
#absoluteUsageAtStartOfBucket ⇒ Object
At the time this bucket was created, the value of the absolute usage for all time
14 15 16 |
# File 'lib/quartz_flow/usagetracker.rb', line 14 def absoluteUsageAtStartOfBucket @absoluteUsageAtStartOfBucket end |
#criteriaData ⇒ Object
Data used by BucketChangeCriteria to determine when we need a new bucket.
12 13 14 |
# File 'lib/quartz_flow/usagetracker.rb', line 12 def criteriaData @criteriaData end |
#label ⇒ Object
Returns the value of attribute label.
10 11 12 |
# File 'lib/quartz_flow/usagetracker.rb', line 10 def label @label end |
#value ⇒ Object
The amount of usage for this bucket alone
16 17 18 |
# File 'lib/quartz_flow/usagetracker.rb', line 16 def value @value end |
Instance Method Details
#fromHash(hash) ⇒ Object
22 23 24 25 26 27 |
# File 'lib/quartz_flow/usagetracker.rb', line 22 def fromHash(hash) @label = hash["label"] @absoluteUsageAtStartOfBucket = hash["absoluteUsageAtStartOfBucket"] @criteriaData = hash["criteriaData"] @value = hash["value"] end |
#fromModel(bucket) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/quartz_flow/usagetracker.rb', line 29 def fromModel(bucket) @label = bucket.label @absoluteUsageAtStartOfBucket = bucket.absoluteUsage @criteriaData = bucket.criteriaData @value = bucket.value end |
#toHash ⇒ Object
18 19 20 |
# File 'lib/quartz_flow/usagetracker.rb', line 18 def toHash {"label" => @label, "absoluteUsageAtStartOfBucket" => @absoluteUsageAtStartOfBucket, "criteriaData" => @criteriaData, "value" => @value} end |
#toModel ⇒ Object
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/quartz_flow/usagetracker.rb', line 36 def toModel model = UsageBucket.new model.attributes = { :label => @label, :absoluteUsage => @absoluteUsageAtStartOfBucket, :criteriaData => @criteriaData, :value => @value } model end |