class Object

Public Instance Methods

check_released_resource(released_resource) click to toggle source
# File lib/ip_wrangler/main.rb, line 47
def check_released_resource(released_resource)
  if released_resource.length > 0
    [200, released_resource.to_json]
  else
    204
  end
end
release_ip_and_check(private_ip, public_ip = nil) click to toggle source
# File lib/ip_wrangler/main.rb, line 37
def release_ip_and_check(private_ip, public_ip = nil)
  released_ip = $nat.release_ip(private_ip, public_ip)
  check_released_resource(released_ip)
end
release_port_and_check(private_ip, private_port = nil, protocol = nil) click to toggle source
# File lib/ip_wrangler/main.rb, line 42
def release_port_and_check(private_ip, private_port = nil, protocol = nil)
  released_port = $nat.release_port(private_ip, private_port, protocol)
  check_released_resource(released_port)
end
sandbox() { || ... } click to toggle source
# File lib/ip_wrangler/main.rb, line 12
def sandbox(&block)
  begin
    content_type('application/json')
    yield
  rescue RuntimeError => e
    $logger.error("Runtime error: #{e}:#{e.backtrace}")
    400
  rescue Exception => e
    $logger.error("Unresolved exception: #{e}:#{e.backtrace}")
    500
  end
end
valid_ip?(ip) click to toggle source
# File lib/ip_wrangler/main.rb, line 25
def valid_ip?(ip)
  (ip =~ /^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/) ? true : false
end
valid_port?(port) click to toggle source
# File lib/ip_wrangler/main.rb, line 29
def valid_port?(port)
  (1..65535).include?(port)
end
valid_protocol?(protocol) click to toggle source
# File lib/ip_wrangler/main.rb, line 33
def valid_protocol?(protocol)
  protocol =~ /^(tcp|udp)$/i ? true : false
end