class Vop::ServiceLoader
Public Class Methods
new(plugin)
click to toggle source
# File standard/services/helpers/service_loader.rb, line 5 def initialize(plugin) @plugin = plugin @op = plugin.op @services = [] @plugin.inject_helpers(self) extend ServiceSyntax end
Public Instance Methods
new_service(name)
click to toggle source
# File standard/services/helpers/service_loader.rb, line 16 def new_service(name) $logger.debug "new service in #{@plugin.name}: #{name}" @service = Service.new(@plugin, name) $logger.debug "service plugin : #{@service.plugin.name}" @services << @service @service end
read_sources(named_sources)
click to toggle source
# File standard/services/helpers/service_loader.rb, line 24 def read_sources(named_sources) # reads a hash of <name> => <source string> named_sources.each do |name, source| new_service(name) begin self.instance_eval(source[:code], source[:file_name]) rescue SyntaxError => detail raise Errors::ServiceLoadError.new("problem loading service #{name}", detail.backtrace.join("\n")) end end @services end