Class: YuiRestClient::Http::WidgetController
- Inherits:
-
Object
- Object
- YuiRestClient::Http::WidgetController
- Defined in:
- lib/yui_rest_client/http/widget_controller.rb
Instance Method Summary collapse
-
#find(filter) ⇒ Response
Find a widget using the filter.
-
#initialize(host:, port:) ⇒ WidgetController
constructor
A new instance of WidgetController.
-
#send_action(filter, action) ⇒ Response
Perform an action on the widget.
Constructor Details
#initialize(host:, port:) ⇒ WidgetController
Returns a new instance of WidgetController.
6 7 8 9 10 11 |
# File 'lib/yui_rest_client/http/widget_controller.rb', line 6 def initialize(host:, port:) @host = host @port = port @timeout = YuiRestClient.timeout @interval = YuiRestClient.interval end |
Instance Method Details
#find(filter) ⇒ Response
Find a widget using the filter.
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/yui_rest_client/http/widget_controller.rb', line 16 def find(filter) res = nil Wait.until(timeout: @timeout, interval: @interval) do uri = HttpClient.compose_uri(@host, @port, "/#{API_VERSION}/widgets", filter) res = HttpClient.http_get(uri) Response.new(res) if res.is_a?(Net::HTTPOK) end rescue Error::TimeoutError rescue_errors(res) end |
#send_action(filter, action) ⇒ Response
Perform an action on the widget.
31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/yui_rest_client/http/widget_controller.rb', line 31 def send_action(filter, action) res = nil Wait.until(timeout: @timeout, interval: @interval) do uri = HttpClient.compose_uri(@host, @port, "/#{API_VERSION}/widgets", filter.merge(action)) res = HttpClient.http_post(uri) Response.new(res) if res.is_a?(Net::HTTPOK) end rescue Error::TimeoutError rescue_errors(res) end |