Skip to content

Instantly share code, notes, and snippets.

@toretore
toretore / explicit.rb
Created November 15, 2011 10:03 — forked from mikebaldry/gist:1366593
find subclasses
class PullSource
def self.implementations
@implementations ||= {}
end
def self.register(name)
implementations[name] << self
end
@toretore
toretore / gist:1922637
Created February 27, 2012 09:02
something like this in the contract model
class Contract < ActiveRecord::Base
has_paper_trail
acts_as_restful_list
CHANGE_FIELDS_MAP = {
'contract_status_id' => {
:association => 'contract_status'
:field => 'name'
}
class Storefront < ActiveRecord::Base
extend WebsiteValidation
validates_website :website
end
@toretore
toretore / mtool.rb
Last active August 29, 2015 13:57 — forked from Aeon/mtool.rb
require 'api/pools.rb'
module Mtool
extend Blather::DSL
#Blather.logger.level = Logger::DEBUG
Blather.logger.level = Logger::INFO
@@faye = nil
#!/usr/bin/env ruby
require 'socket'
require 'thread'
threads = Array.new
ports = [*(1..1024)]
mutex = Mutex.new
20.times do
class Library
attr_accessor :games
def each
games.each do |game|
yield game
end
end
end
# /^(\d{2}\/\d{2}) (.*) (\-?\d+\.\d+)/
File.open ARGV[0], 'r' do |file|
file.each_line do |line|
if m = line.match(/^(\d{2}\/\d{2}) (.*) (\-?\d+\.\d+)/)
puts [m[1], m[2], m[3]].join(', ')
end
end
@toretore
toretore / act.rb
Last active August 29, 2015 14:18 — forked from mikecmpbll/act.rb
w_r, w_w = IO.pipe
t_r, t_w = IO.pipe
work = Thread.new { block.call; w_w.write('.') }
timeout = Thread.new{ sleep 10; t_w.write('.') }
io = IO.select [w_r, t_r]
if io == t_r
#Timeout
class GetData
@@logger = Logger.new('log.log')
def initialize
@yesterday = Date.today.prev_day
@token = xxx
end
def save_actions
with_database do |db|
@toretore
toretore / flatten.rb
Last active October 14, 2015 17:12 — forked from graingert/flatten.rb
module Fluent
class TextParser
class StringifiedValuesJSONParser < JSONParser
Plugin.register_parser("stringified_values_json", self)
def parse(text)
time, record = super(text)
# replace all Hash (like a dict) values with stringified JSON
record = record.inject({}) { | new_hash, (key, value) |