Method: MDK::Project#initialize

Defined in:
lib/ebngen/adapter/mdk.rb

#initialize(project_data, generator_variable, logger = nil) ⇒ Project

Returns a new instance of Project.



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/ebngen/adapter/mdk.rb', line 23

def initialize(project_data, generator_variable, logger = nil)
  @logger = logger 
    unless (logger)
        @logger = Logger.new(STDOUT)
        @logger.level = Logger::WARN
    end
  set_hash(project_data)
  @project_name = get_project_name()
  @board = get_board()
  @paths = PathModifier.new(generator_variable["paths"])
  @mdk_project_files = {"project_projx"=> nil,".yml" => nil, ".uvprojx" => nil}
  return nil if get_template(Project::TOOLCHAIN).nil?
  get_template(Project::TOOLCHAIN).each do |template|
    @logger.info template
    ext = File.extname(template)
    if @mdk_project_files.keys.include?(ext)
      path = @paths.fullpath("default_path",template)
      #begin
      case ext
        when ".uvprojx"
          #fn = File.basename(path, ".uvprojx")
          #if fn == "project_projx"
          doc = Nokogiri::XML(open(path))
            #string_xml = XsdPopulator.new(:xsd => path).populated_xml
            #doc = Nokogiri::XML(string_xml)
          @mdk_project_files["project_projx"] = doc
          #init_project(doc, get_default_project_settings(Project_set::TOOLCHAIN))
            #end
      end
      #rescue
      # @logger.info "failed to open #{template}"
      #end
    end
  end
end