Module: Poms
- Defined in:
- lib/poms.rb,
lib/poms/errors.rb,
lib/poms/fields.rb,
lib/poms/version.rb,
lib/poms/api/auth.rb,
lib/poms/api/uris.rb,
lib/poms/timestamp.rb,
lib/poms/api/client.rb,
lib/poms/api/search.rb,
lib/poms/api/request.rb,
lib/poms/api/response.rb,
lib/poms/configuration.rb,
lib/poms/api/uris/media.rb,
lib/poms/api/json_client.rb,
lib/poms/api/uris/schedule.rb,
lib/poms/api/drivers/net_http.rb,
lib/poms/api/pagination_client.rb
Overview
The version
Defined Under Namespace
Modules: Api, Errors, Fields, Timestamp Classes: Configuration
Constant Summary collapse
- VERSION =
'2.2.1'.freeze
Class Method Summary collapse
- .configure ⇒ Object
- .descendants(mid, search_params = {}) ⇒ Object
- .fetch(arg) ⇒ Object
-
.first(mid) ⇒ Hash?
Returns the first result for a mid if it is not an error.
-
.first!(mid) ⇒ Object
Like ‘first`, but raises `Api::Client::HttpMissingError` when the requested MID could not be found.
- .members(mid) ⇒ Object
-
.merged_series ⇒ Hash
Gets the merged serie mids as a hash.
- .reset_config ⇒ Object
-
.scheduled_next(channel) ⇒ Object
Fetches the event for the next broadcast on a given channel.
-
.scheduled_now(channel) ⇒ Object
Fetches the event for current broadcast on the given channel.
Class Method Details
.configure ⇒ Object
21 22 23 24 25 26 |
# File 'lib/poms.rb', line 21 def configure @config = Configuration.new do |config| yield config if block_given? end nil end |
.descendants(mid, search_params = {}) ⇒ Object
57 58 59 60 61 62 63 |
# File 'lib/poms.rb', line 57 def descendants(mid, search_params = {}) Api::PaginationClient.execute(build_request( method: :post, uri: Api::Uris::Media.descendants(config.base_uri, mid), body: Api::Search.build(search_params) )) end |
.fetch(arg) ⇒ Object
49 50 51 52 53 54 55 |
# File 'lib/poms.rb', line 49 def fetch(arg) Api::JsonClient.execute(build_request( method: :post, uri: Api::Uris::Media.multiple(config.base_uri), body: Array(arg) )) end |
.first(mid) ⇒ Hash?
Returns the first result for a mid if it is not an error.
32 33 34 35 36 |
# File 'lib/poms.rb', line 32 def first(mid) first!(mid) rescue Errors::HttpMissingError nil end |
.first!(mid) ⇒ Object
Like ‘first`, but raises `Api::Client::HttpMissingError` when the requested MID could not be found.
43 44 45 46 47 |
# File 'lib/poms.rb', line 43 def first!(mid) Api::JsonClient.execute(build_request( uri: Api::Uris::Media.single(config.base_uri, mid) )) end |
.members(mid) ⇒ Object
65 66 67 68 69 |
# File 'lib/poms.rb', line 65 def members(mid) Api::PaginationClient.execute(build_request( uri: Api::Uris::Media.members(config.base_uri, mid) )) end |
.merged_series ⇒ Hash
Gets the merged serie mids as a hash. Expects a JSON response from the server with a ‘map` key.
75 76 77 78 79 |
# File 'lib/poms.rb', line 75 def merged_series Api::JsonClient.execute(build_request( uri: Api::Uris::Media.redirects(config.base_uri) )).fetch('map') end |
.reset_config ⇒ Object
99 100 101 |
# File 'lib/poms.rb', line 99 def reset_config @config = nil end |