Sha256: f01a7d6f2561870f7b1fe82300e31447ac905d98a22ce5a88af0d2c6678738ff
Contents?: true
Size: 1.1 KB
Versions: 1
Compression:
Stored size: 1.1 KB
Contents
module Audiences def aud_to_str(aud) "#{aud.service_name}.#{aud.component_name}.#{aud.operation_type}.#{aud.operation_name}" end def str_to_aud(str) # TODO: move to common package parts = str.split(".") aud = Streamdal::Protos::Audience.new aud.service_name = parts[0] aud.component_name = parts[1] aud.operation_type = parts[2] aud.operation_name = parts[3] aud end def _seen_audience(aud) @audiences.key?(aud_to_str(aud)) end def _add_audience(aud) # Add an audience to the local cache map and send to server if _seen_audience(aud) return end @audiences[aud_to_str(aud)] = aud req = Streamdal::Protos::NewAudienceRequest.new req.session_id = @session_id req.audience = aud @stub.new_audience(req, metadata: _metadata) end def _add_audiences # This method is used to re-announce audiences after a disconnect @audiences.each do |aud| req = Streamdal::Protos::NewAudienceRequest.new req.session_id = @session_id req.audience = aud @stub.new_audience(req, metadata: _metadata) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
streamdal-0.0.1 | lib/audiences.rb |