Skip to content

Configuration Reader #1

Description

@linqueta

About configuration reader, I've thought in a solution where each gem can describe how to process your files and what files. How we know what gems can process the ymls content, my suggestion is something like that:

module ActiveMessage
class << self
def build_configurations!
content = ActiveMessage::Reader.read!
response = ActiveMessage::Reader::Processor::Core.process!(content)
response += ActiveMessage::Reader::Processor::Sqs.process!(content) if defined?(ActiveMessage::Sqs)
response += ActiveMessage::Reader::Processor::Sns.process!(content) if defined?(ActiveMessage::Sns)

  response
end

end
end

module ActiveMessage
module Reader
class << self
def read!
fetch_files!
.map { |e| read_file(e) }
.map { |e| handle_yml(e) }
.map { |e| handle_variables(e) }
.map { |e| parse_content(e) }
end

  private

  def fetch_files!

  end

  def read_file

  end

  def handle_variables

  end

  def parse_content

  end

  def handle_yml

  end
end

end
end

module ActiveMessage
module Reader
module Processor
module Base
def process!(content)
raise NotImplementedError
end
end
end
end
end

module ActiveMessage
module Reader
module Processor
module Core
def process!(content)
content.map { ActiveMessage::Configuration.new } # Process content and generate configurations
end
end
end
end
end

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions