class DNSManager::Request IPC::JSON.message DelegateDomain, 25 do property domain : String property nameserver1 : String property nameserver2 : String def initialize(@domain, @nameserver1, @nameserver2) end def to_s(io : IO) super io io << " (domain: #{@domain}, ns1: #{@nameserver1}, ns2: #{@nameserver2}" end def handle(dnsmanagerd : DNSManager::Service, event : IPC::Event) : IPC::JSON user = dnsmanagerd.get_logged_user event return Response::ErrorUserNotLogged.new unless user dnsmanagerd.storage.delegate_domain user.uid, @domain, @nameserver1, @nameserver2 end end DNSManager.requests << DelegateDomain end