Sha256: 56e772f94431adec450d1b4c0d7ebdb7ed10948fdbe1a38801a6f5b40cc0d28e

Contents?: true

Size: 742 Bytes

Versions: 24

Compression:

Stored size: 742 Bytes

Contents

require 'config_builder/loader'
require 'config_builder/filter_stack'
require 'config_builder/model'
require 'config_builder/extension_handler'

module ConfigBuilder
  class Runner

    def run(identifier, method, value)
      load_extensions

      data = ConfigBuilder::Loader.generate(identifier, method, value)
      filtered_data = run_filters(data)
      model = generate_model(filtered_data)
    end

    private

    def load_extensions
      ext = ConfigBuilder::ExtensionHandler.new
      ext.load_from_plugins
    end

    def run_filters(data)
      stack = ConfigBuilder::FilterStack.new
      stack.filter(data)
    end

    def generate_model(filtered_hash)
      ConfigBuilder::Model.generate(filtered_hash)
    end
  end
end

Version data entries

24 entries across 24 versions & 2 rubygems

Version Path
vagrant-config_builder-1.3.0 lib/config_builder/runner.rb
vagrant-config_builder-1.2.0 lib/config_builder/runner.rb
vagrant-config_builder-1.1.0 lib/config_builder/runner.rb
vagrant-config_builder-1.0.0 lib/config_builder/runner.rb
vagrant-config_builder-1.0.0.rc1 lib/config_builder/runner.rb
vagrant-config_builder-0.15.1 lib/config_builder/runner.rb
vagrant-config_builder-0.15.0 lib/config_builder/runner.rb
vagrant-config_builder-0.14.0 lib/config_builder/runner.rb
vagrant-config_builder-0.13.0 lib/config_builder/runner.rb
vagrant-masonry-0.13.0 lib/config_builder/runner.rb
vagrant-config_builder-0.12.0 lib/config_builder/runner.rb
vagrant-config_builder-0.11.0 lib/config_builder/runner.rb
vagrant-config_builder-0.10.1 lib/config_builder/runner.rb
vagrant-config_builder-0.10.0 lib/config_builder/runner.rb
vagrant-config_builder-0.9.0 lib/config_builder/runner.rb
vagrant-config_builder-0.8.0 lib/config_builder/runner.rb
vagrant-config_builder-0.7.1 lib/config_builder/runner.rb
vagrant-config_builder-0.7.0 lib/config_builder/runner.rb
vagrant-config_builder-0.6.0 lib/config_builder/runner.rb
vagrant-config_builder-0.5.0 lib/config_builder/runner.rb