Sha256: 3248f476ddf931117594791e3ce63b94c62467187a62a0a0af0c33479fa34e40

Contents?: true

Size: 662 Bytes

Versions: 2

Compression:

Stored size: 662 Bytes

Contents

module Octopress
  class Plugin
    def self.included(subclass)
      @plugins ||= []
      @plugins << subclass
      Octopress.logger.debug "Registering Plugin: #{subclass}"
    end

    def self.init!(context)
      @plugins.each do |plugin|
        if plugin.tasks.size > 0
          plugin.tasks.each do |task_file|
            context.instance_eval do
              load task_file
            end
          end
        end
      end
    end

    def self.root
      self.const_get(:ROOT)
    end

    def self.name
      self.to_s.underscore
    end

    def self.tasks
      Dir[File.join(self.root, 'lib', self.name, 'rake', '*.rake')]
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
octopress-3.0.0.alpha2 lib/octopress/plugin.rb
octopress-3.0.0.alpha1 lib/octopress/plugin.rb