| @@ 96-128 (lines=33) @@ | ||
| 93 | end |
|
| 94 | end |
|
| 95 | ||
| 96 | def renew(events = nil) |
|
| 97 | set_events(events) if events.is_a? Array |
|
| 98 | ||
| 99 | unless alive? |
|
| 100 | raise 'Subscription is not alive' |
|
| 101 | end |
|
| 102 | ||
| 103 | if !@event_filters.is_a?(Array) || @event_filters.length ==0 |
|
| 104 | raise 'Events are undefined' |
|
| 105 | end |
|
| 106 | ||
| 107 | _clear_timeout() |
|
| 108 | ||
| 109 | begin |
|
| 110 | response = @_client.http.put do |req| |
|
| 111 | req.url 'subscription/' + @_subscription['id'].to_s |
|
| 112 | req.headers['Content-Type'] = 'application/json' |
|
| 113 | req.body = { |
|
| 114 | eventFilters: @_client.create_urls(@event_filters) |
|
| 115 | } |
|
| 116 | end |
|
| 117 | ||
| 118 | set_subscription response.body |
|
| 119 | changed |
|
| 120 | notify_observers response |
|
| 121 | return response |
|
| 122 | rescue StandardError => e |
|
| 123 | reset() |
|
| 124 | changed |
|
| 125 | notify_observers e |
|
| 126 | raise 'Renew HTTP Request Error' |
|
| 127 | end |
|
| 128 | end |
|
| 129 | ||
| 130 | def remove() |
|
| 131 | unless alive? |
|
| @@ 65-94 (lines=30) @@ | ||
| 62 | @event_filters = events |
|
| 63 | end |
|
| 64 | ||
| 65 | def subscribe(events=nil) |
|
| 66 | set_events(events) if events.is_a? Array |
|
| 67 | ||
| 68 | if !@event_filters.is_a?(Array) || @event_filters.length == 0 |
|
| 69 | raise 'Events are undefined' |
|
| 70 | end |
|
| 71 | ||
| 72 | begin |
|
| 73 | response = @_client.http.post do |req| |
|
| 74 | req.url 'subscription' |
|
| 75 | req.headers['Content-Type'] = 'application/json' |
|
| 76 | req.body = { |
|
| 77 | eventFilters: @_client.create_urls(@event_filters), |
|
| 78 | deliveryMode: { |
|
| 79 | transportType: 'PubNub' |
|
| 80 | } |
|
| 81 | } |
|
| 82 | end |
|
| 83 | set_subscription response.body |
|
| 84 | _subscribe_at_pubnub() |
|
| 85 | changed |
|
| 86 | notify_observers response |
|
| 87 | return response |
|
| 88 | rescue StandardError => e |
|
| 89 | reset() |
|
| 90 | changed |
|
| 91 | notify_observers(e) |
|
| 92 | raise 'Subscribe HTTP Request Error: ' + e.to_s |
|
| 93 | end |
|
| 94 | end |
|
| 95 | ||
| 96 | def renew(events = nil) |
|
| 97 | set_events(events) if events.is_a? Array |
|