def install_templates(rambafile)
      # We always clear previously installed templates to avoid conflicts in different versions
      clear_installed_templates

      templates = rambafile[TEMPLATES_KEY]

      if !templates || templates.count == 0
        puts 'You must specify at least one template in Rambafile under the key *templates*'.red
        return
      end

      # Mapping hashes to model objects
      templates = rambafile[TEMPLATES_KEY].map { |template_hash|
        Generamba::TemplateDeclaration.new(template_hash)
      }

      catalogs = rambafile[CATALOGS_KEY]
      # If there is at least one template from catalogs, we should update our local copy of the catalog
      update_catalogs_if_needed(catalogs, templates)

      templates.each do |template_declaration|
        strategy = @installer_factory.installer_for_type(template_declaration.type)
        template_declaration.install(strategy)
      end
    end
def install_templates(rambafile)
      # We always clear previously installed templates to avoid conflicts in different versions
      clear_installed_templates

      templates = rambafile[TEMPLATES_KEY]

      if !templates || templates.count == 0
        puts 'You must specify at least one template in Rambafile under the key *templates*'.red
        return
      end

      # Mapping hashes to model objects
      templates = rambafile[TEMPLATES_KEY].map { |template_hash|
        Generamba::TemplateDeclaration.new(template_hash)
      }

      catalogs = rambafile[CATALOGS_KEY]
      # If there is at least one template from catalogs, we should update our local copy of the catalog
      update_catalogs_if_needed(catalogs, templates)

      templates.each do |template_declaration|
        strategy = @installer_factory.installer_for_type(template_declaration.type)
        template_declaration.install(strategy)
      end
    end
def install_templates ( rambafile ) # We always clear previously installed templates to avoid conflicts in different versions clear_installed_templates templates = rambafile [ TEMPLATES_KEY ] if ! templates || templates . count == 0 puts 'You must specify at least one template in Rambafile under the key *templates*' . red return end # Mapping hashes to model objects templates = rambafile [ TEMPLATES_KEY ] . map { | template_hash | Generamba :: TemplateDeclaration . new ( template_hash ) } catalogs = rambafile [ CATALOGS_KEY ] # If there is at least one template from catalogs, we should update our local copy of the catalog update_catalogs_if_needed ( catalogs , templates ) templates . each do | template_declaration | strategy = @installer_factory . installer_for_type ( template_declaration . type ) template_declaration . install ( strategy ) end end
This method parses Rambafile, serializes templates hashes into model objects and install them
This method parses Rambafile serializes templates hashes into model objects and install them