Sha256: 66e644672655a5fb091e566f1851ddaeb0f2b06910b5b20e6f62b22dd0355f76

Contents?: true

Size: 698 Bytes

Versions: 1

Compression:

Stored size: 698 Bytes

Contents

module Animal
  # The class responsible for actually classifying a node
  # The Classifier pulls together required plugins and config
  class Classifier
    def initialize(node_name)
      @node_name = node_name
    end

    def classes
      classify('classes')
    end

    def parameters
      classify('parameters')
    end

    def environment
      classify('environment')
    end

    def classify(type)
      case type
      when 'environment'
        # TODO: look this up in a configuration somewhere
        'production'
      when 'classes'
        Rule.apply_all_for(@node_name)
      when 'parameters'
        nil
      else
        raise 'Not Implemented'
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
animal-0.2.2 lib/animal/classifier.rb