Project

catscan

0.0
No commit activity in last 3 years
No release in over 3 years
A Catscanner for your Rails apps!
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

~> 3.2.15
 Project Readme

Catscan

A Catscanner for your Rails apps! — allows you to 'scan' through your codebase by hooking into Rails's ActiveSupport::Notifications API.

Installation

Add this line to your application's Gemfile:

gem 'catscan'

And then execute:

$ bundle

Or install it yourself as:

$ gem install catscan

Finally, install and run migrations:

$ rake catscan:install:migrations
$ rake db:migrate

API Summary

The scanner can be wrapped within a convenience module for usage within other modules or, for example, say in a rake task.

require 'catscan'

namespace :foo do
  task :my_task => :environment do

    module RakeScanner
      include Catscan::Scannable
    end

    RakeScanner.scan(#...)

  end
end

Within classes, simply include the Scannable mixin which will setup scan as a class method, i.e. Client.scan. In the following example, a call to Client.first.name would scan and persist the :name attribute of Client.

class Client
  include Catscan::Scannable

  def name
    scan self, "#{name}", "Name, of the client", :client
    @name
  end
end

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

This project rocks and uses MIT-LICENSE.