class Moblues::Reader::Model

Attributes

entity_reader[R]
model_resolver[R]

Public Class Methods

new(params = defaults) click to toggle source
# File lib/moblues/reader/model.rb, line 8
def initialize(params = defaults)
  @model_resolver = params[:resolver]
  @entity_reader = params[:reader]
end

Public Instance Methods

model(path) click to toggle source
# File lib/moblues/reader/model.rb, line 13
def model(path)
  raise ArgumentError unless path
  content_path = model_resolver.resolve_model(path)
  xml = REXML::Document.new(File.read(content_path))
  xml.root.elements.to_a('entity').map { |entity| entity_reader.entity(entity) }
end

Private Instance Methods

defaults() click to toggle source
# File lib/moblues/reader/model.rb, line 23
def defaults
  {
    resolver: Utils::ModelResolver.new,
    reader:   Entity.new
  }
end