class Proxy::DHCP::Dnsmasq::PluginConfiguration
Public Instance Methods
load_classes()
click to toggle source
# File lib/smart_proxy_dhcp_dnsmasq/plugin_configuration.rb, line 5 def load_classes require 'dhcp_common/free_ips' require 'smart_proxy_dhcp_dnsmasq/dhcp_dnsmasq_subnet_service' require 'smart_proxy_dhcp_dnsmasq/dhcp_dnsmasq_main' end
load_dependency_injection_wirings(container, settings)
click to toggle source
# File lib/smart_proxy_dhcp_dnsmasq/plugin_configuration.rb, line 11 def load_dependency_injection_wirings(container, settings) container.singleton_dependency :unused_ips, -> { ::Proxy::DHCP::FreeIps.new(settings[:blacklist_duration_minutes]) } container.dependency :memory_store, ::Proxy::MemoryStore container.singleton_dependency :subnet_service, (lambda do ::Proxy::DHCP::Dnsmasq::SubnetService.new( settings[:config], settings[:target_dir], settings[:lease_file], container.get_dependency(:memory_store), container.get_dependency(:memory_store), container.get_dependency(:memory_store), container.get_dependency(:memory_store), container.get_dependency(:memory_store) ) end) container.dependency :dhcp_provider, (lambda do Proxy::DHCP::Dnsmasq::Provider.new( settings[:target_dir], settings[:reload_cmd], container.get_dependency(:subnet_service), container.get_dependency(:unused_ips) ) end) end