Class: GripPubControl

Inherits:
PubControl
  • Object
show all
Defined in:
lib/grippubcontrol.rb

Instance Method Summary collapse

Instance Method Details

#apply_grip_config(config) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/grippubcontrol.rb', line 15

def apply_grip_config(config)
  if !config.is_a?(Array)
    config = [config]
  end
  config.each do |entry|
    if !entry.key?('control_uri')
      next
    end
    client = PubControlClient.new(entry['control_uri'])
    if entry.key?('control_iss')
      client.set_auth_jwt({'iss' => entry['control_iss']}, entry['key'])
    end
    super_add_client(client)
  end
end

#publish_http_response(channel, http_response, id = nil, prev_id = nil) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/grippubcontrol.rb', line 31

def publish_http_response(channel, http_response, id=nil, prev_id=nil)
  if http_response.is_a?(String)
    http_response = HttpResponseFormat.new(nil, nil, nil, http_response)
  end
  item = Item.new(http_response, id, prev_id)
  super_publish(channel, item)
end

#publish_http_response_async(channel, http_response, id = nil, prev_id = nil, callback = nil) ⇒ Object



39
40
41
42
43
44
45
46
# File 'lib/grippubcontrol.rb', line 39

def publish_http_response_async(channel, http_response, id=nil,
    prev_id=nil, callback=nil)
  if http_response.is_a?(String)
    http_response = HttpResponseFormat.new(nil, nil, nil, http_response)
  end
  item = Item.new(http_response, id, prev_id)
  super_publish_async(channel, item, callback)
end

#publish_http_stream(channel, http_stream, id = nil, prev_id = nil) ⇒ Object



48
49
50
51
52
53
54
# File 'lib/grippubcontrol.rb', line 48

def publish_http_stream(channel, http_stream, id=nil, prev_id=nil)
  if http_stream.is_a?(String)
    http_stream = HttpStreamFormat.new(http_stream)
  end
  item = Item.new(http_stream, id, prev_id)
  super_publish(channel, item)
end

#publish_http_stream_async(channel, http_stream, id = nil, prev_id = nil, callback = nil) ⇒ Object



56
57
58
59
60
61
62
63
# File 'lib/grippubcontrol.rb', line 56

def publish_http_stream_async(channel, http_stream, id=nil,
    prev_id=nil, callback=nil)
  if http_stream.is_a?(String)
    http_stream = HttpStreamFormat.new(http_stream)
  end
  item = Item.new(http_stream, id, prev_id)  
  super_publish_async(channel, item, callback)
end