Sha256: d14fe944cb7fb12f2cc6deb85c969b914f47141a02efda735834dc8f8bab30e5

Contents?: true

Size: 1000 Bytes

Versions: 12

Compression:

Stored size: 1000 Bytes

Contents

#--
# Copyright (c) 2010-2012 Engine Yard, Inc.
# Copyright (c) 2007-2009 Sun Microsystems, Inc.
# This source code is available under the MIT license.
# See the file LICENSE.txt for details.
#++

module Warbler
  module Traits
    # The Merb trait adds Merb::BootLoader gem dependencies to the project.
    class Merb
      include Trait

      def self.detect?
        File.exist?("config/init.rb")
      end

      def self.requires?(trait)
        trait == Traits::War
      end

      def before_configure
        return false unless task = Warbler.project_application.lookup("merb_env")
        task.invoke rescue nil
        return false unless defined?(::Merb)
        config.webxml.booter = :merb
        if defined?(::Merb::BootLoader::Dependencies.dependencies)
          ::Merb::BootLoader::Dependencies.dependencies.each {|g| config.gems << g }
        else
          warn "unable to auto-detect Merb dependencies; upgrade to Merb 1.0 or greater"
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
warbler-1.4.4 lib/warbler/traits/merb.rb
warbler-1.4.3 lib/warbler/traits/merb.rb
warbler-1.4.2 lib/warbler/traits/merb.rb
warbler-1.4.1 lib/warbler/traits/merb.rb
warbler-1.4.0 lib/warbler/traits/merb.rb
warbler-1.4.0.beta2 lib/warbler/traits/merb.rb
warbler-1.4.0.beta1 lib/warbler/traits/merb.rb
warbler-1.3.8 lib/warbler/traits/merb.rb
warbler-1.3.7 lib/warbler/traits/merb.rb
warbler-1.3.6 lib/warbler/traits/merb.rb
warbler-1.3.5 lib/warbler/traits/merb.rb
warbler-1.3.4 lib/warbler/traits/merb.rb