Sha256: fbadf43ca8e037e73850798b6199bf23516b6d9161ec1d609c09f3856548cd6c
Contents?: true
Size: 992 Bytes
Versions: 2
Compression:
Stored size: 992 Bytes
Contents
module Dyndnsd module Responder class RestStyle def response_for_error(state) # general http errors return [405, {"Content-Type" => "text/plain"}, ["Method Not Allowed"]] if state == :method_forbidden return [404, {"Content-Type" => "text/plain"}, ["Not Found"]] if state == :not_found # specific errors return [422, {"Content-Type" => "text/plain"}, ["Hostname missing"]] if state == :hostname_missing return [403, {"Content-Type" => "text/plain"}, ["Forbidden"]] if state == :host_forbidden return [422, {"Content-Type" => "text/plain"}, ["Hostname malformed"]] if state == :hostname_malformed end def response_for_changes(states, ip) body = states.map { |state| state == :good ? "Changed to #{ip.is_a?(Array) ? ip.join(' ') : ip}" : "No change needed for #{ip.is_a?(Array) ? ip.join(' ') : ip}" }.join("\n") return [200, {"Content-Type" => "text/plain"}, [body]] end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dyndnsd-1.6.1 | lib/dyndnsd/responder/rest_style.rb |
dyndnsd-1.6.0 | lib/dyndnsd/responder/rest_style.rb |