Class: StatusQuerier::Querier::Query
- Inherits:
-
Object
- Object
- StatusQuerier::Querier::Query
- Defined in:
- lib/status_querier/querier.rb
Instance Method Summary collapse
- #combine_scopes(model_class, statuses, with = :or) ⇒ Object
- #with_resource_status(model_class, status) ⇒ Object
Instance Method Details
#combine_scopes(model_class, statuses, with = :or) ⇒ Object
38 39 40 |
# File 'lib/status_querier/querier.rb', line 38 def combine_scopes(model_class, statuses, with = :or) statuses.map { |status| with_resource_status(model_class, status) }.reduce(with) end |
#with_resource_status(model_class, status) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/status_querier/querier.rb', line 42 def with_resource_status(model_class, status) unless StatusQuerier::SUPPORTED_STATUSES.include?(status) raise Error::InvalidStatus, "Status needs to be #{StatusQuerier::SUPPORTED_STATUSES.join(', ')}" end unless model_class.respond_to?(status) raise ::NotImplementedError end model_class.send(status) end |