Sha256: 2b25a40c83c25e2ad4ebf4b91a6d01b79920997ce8472e7ae290511ad55ebcae

Contents?: true

Size: 707 Bytes

Versions: 28

Compression:

Stored size: 707 Bytes

Contents

module PoolParty
      
  module Plugin
        
    class Plugin
      include Configurable
      include CloudResourcer
      include Resources
      
      class_inheritable_accessor :name
      
      default_options({})
      
      def initialize(p=self, opts={}, &block)
        store_block &block
        run_setup(p)
        realize! unless block
      end
            
      def realize!(force=false)
        force ? force_realize! : (@realized ? nil : force_realize!)
      end
      
      def force_realize!
        run_setup(parent, false, &stored_block)
        enable unless stored_block
      end
      
      # Overwrite this method
      def enable
      end
      
    end
    
  end
end

Version data entries

28 entries across 28 versions & 2 rubygems

Version Path
auser-poolparty-0.2.64 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.65 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.66 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.67 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.68 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.69 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.70 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.71 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.72 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.74 lib/poolparty/pool/plugin.rb
auser-poolparty-0.2.76 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.77 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.78 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.79 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.80 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.81 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.84 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.85 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.88 lib/poolparty/poolparty/plugin.rb
auser-poolparty-0.2.89 lib/poolparty/poolparty/plugin.rb