Skip to content

Instantly share code, notes, and snippets.

@inf0rmer
inf0rmer / blanket-generating-exception-classes.rb
Created December 30, 2014 16:53
Automatically generating ~60 Blanket::Exception subclasses
STATUSES.each_pair do |code, message|
klass = Class.new(Exception) do
send(:define_method, :message) {"#{code ? "#{code} " : ''}#{message}"}
end
klass_constant = const_set message.delete(' \-\''), klass
Exceptions::EXCEPTIONS_MAP[code] = klass_constant
end
@inf0rmer
inf0rmer / blanket-raise-exception.rb
Created December 30, 2014 16:58
Raising a well-known exception using EXCEPTIONS_MAP in Blanket
raise Blanket::Exceptions::EXCEPTIONS_MAP[500].new
@inf0rmer
inf0rmer / blanket-raise-exception-direct.rb
Last active August 29, 2015 14:12
Raising a well-known exception directly in Blanket
raise Blanket::InternalServerError.new
@inf0rmer
inf0rmer / blanket-exception-yard.rb
Created December 30, 2014 17:08
Blanket::Exception's initialize method documented
# Creates a new exception
# @param [HTTParty::Response] response the HTTP Response
# @return [Blanket::Exception] The Blanket Exception object
def initialize(response = nil)
#...
end
@inf0rmer
inf0rmer / blanket-dynamic-actions-yard.rb
Created December 30, 2014 17:12
Documenting dynamically created REST actions in Blanket
# @macro [attach] REST action
# @method $1()
# Performs a $1 request on the wrapped URL
# @param [String, Symbol, Numeric] id The resource identifier to attach to the last part of the request
# @param [Hash] options An options hash with values for :headers, :extension and :params
# @return [Blanket::Response, Array] A wrapped Blanket::Response or an Array
def add_action(action)
#...
end
@inf0rmer
inf0rmer / hostapd-starter
Created June 30, 2015 18:55
Starting hostapd when WiFi goes down
#!/bin/bash
#
# Interface checker
# Checks to see whether interface has an IP address, if it doesn't assume it's down and start hostapd
# Author : SirLagz
#
Interface='wlan0'
HostAPDIP='10.0.0.1'
echo "-----------------------------------"
echo "Checking connectivity of $Interface"