class Riddl::Utils::Notifications::Producer::Backend
Attributes
topics[R]
Public Class Methods
new(topics,target,init=nil)
click to toggle source
# File lib/ruby/riddl/utils/notifications_producer.rb, line 133 def initialize(topics,target,init=nil) @target = target.gsub(/^\/+/,'/') unless File.exist?(@target) if init FileUtils::cp_r init, @target else FileUtils::mkdir_p(@target) end end raise "topics file not found" unless File.exist?(topics) @topics = XML::Smart.open_unprotected(topics.gsub(/^\/+/,'/')) @topics.register_namespace 'n', 'http://riddl.org/ns/common-patterns/notifications-producer/1.0' subscriptions.each do |sub,key| sub.read do |doc| if doc.find('/*[@url]').empty? sub.delete end end end end
Public Instance Methods
subscriptions()
click to toggle source
# File lib/ruby/riddl/utils/notifications_producer.rb, line 157 def subscriptions Subs.new(@target) end