module Redlics::Granularity
Granularity
namespace
Public Instance Methods
default(context)
click to toggle source
Get default granularities by given context.
@param context [Hash] the hash of a context defined in Redlics::CONTEXTS @return [Array] includes all valid default granularities
# File lib/redlics/granularity.rb, line 23 def default(context) check(Redlics.config["#{context[:long]}_granularity"]) || [Redlics.config.granularities.keys.first] end
validate(context, granularities)
click to toggle source
Validate granularities by given context.
@param context [Hash] the hash of a context defined in Redlics::CONTEXTS @param granularities [Range] granularity range @param granularities [String] single granularity @param granularities [Array] granularity array @return [Array] includes all valid granularities
# File lib/redlics/granularity.rb, line 15 def validate(context, granularities) check(granularities) || default(context) end
Private Instance Methods
check(granularities)
click to toggle source
Check if granularities are defined in the configuration.
@param granularities [Range] granularity range @param granularities [String] single granularity @param granularities [Array] granularity array @return [Array] includes all valid granularities
# File lib/redlics/granularity.rb, line 35 def check(granularities) keys = Redlics.config.granularities.keys checked = case granularities when Range keys[keys.index(granularities.first.to_sym)..keys.index(granularities.last.to_sym)] when Array [granularities.map(&:to_sym)].flatten & keys else [granularities && granularities.to_sym].flatten & keys end checked.any? ? checked : nil end