class Liebre::Engine::Repository

Attributes

consumers[R]
publishers[R]
rpc_clients[R]
rpc_servers[R]

Public Class Methods

new() click to toggle source
# File lib/liebre/engine/repository.rb, line 5
def initialize
  @publishers  = {}
  @consumers   = {}
  @rpc_clients = {}
  @rpc_servers = {}
end

Public Instance Methods

all() click to toggle source
# File lib/liebre/engine/repository.rb, line 21
def all
  publishers.values + consumers.values + rpc_clients.values + rpc_servers.values
end
clear() click to toggle source
# File lib/liebre/engine/repository.rb, line 29
def clear
  publishers.clear
  consumers.clear
  rpc_clients.clear
  rpc_servers.clear
end
consumer(name) click to toggle source
# File lib/liebre/engine/repository.rb, line 40
def consumer name
  consumers.fetch(name)
end
each(&block) click to toggle source
# File lib/liebre/engine/repository.rb, line 25
def each &block
  all.each(&block)
end
insert(type, name, resource) click to toggle source
# File lib/liebre/engine/repository.rb, line 12
def insert type, name, resource
  case type
    when :publishers  then publishers[name]  = resource
    when :consumers   then consumers[name]   = resource
    when :rpc_clients then rpc_clients[name] = resource
    when :rpc_servers then rpc_servers[name] = resource
  end
end
publisher(name) click to toggle source
# File lib/liebre/engine/repository.rb, line 36
def publisher name
  publishers.fetch(name)
end
rpc_client(name) click to toggle source
# File lib/liebre/engine/repository.rb, line 44
def rpc_client name
  rpc_clients.fetch(name)
end
rpc_server(name) click to toggle source
# File lib/liebre/engine/repository.rb, line 48
def rpc_server name
  rpc_servers.fetch(name)
end