RubyGems.org

PluginFactory is a mixin module that turns an including class into a factory for its derivatives, capable of searching for and loading them by name. This is useful when you have an abstract base class which defines an interface and basic functionality for a part of a larger system, and a collection of subclasses which implement the interface for different underlying functionality. An example of where this might be useful is in a program which talks to a database. To avoid coupling it to a specific database, you use a Driver class which encapsulates your program's interaction with the database behind a useful interface. Now you can create a concrete implementation of the Driver class for each kind of database you wish to talk to. If you make the base Driver class a PluginFactory, too, you can add new drivers simply by dropping them in a directory and using the Driver's `create` method to instantiate them:

installgem install pluginfactory
Authors

Martin Chase, Michael Granger

82,902 total downloads 29,362 for this version
Owners

10ffad34687d0045466c257cb92ff2b304cdb622ce0aac272b61f23f373e2abf

Gemfile
gem 'pluginfactory', '~> 1.0.8'
Versions
  1. 1.0.8 February 20, 2012 (20.5 KB)
  2. 1.0.7 September 27, 2010 (50 KB)
  3. 1.0.6 March 23, 2010 (45 KB)
  4. 1.0.5 November 6, 2009 (44 KB)
  5. 1.0.4 February 25, 2009 (42.5 KB)
Show all versions (7 total)