class Muwu::Controller

Public Class Methods

new(current_working_directory) click to toggle source
# File lib/muwu/controller/controller.rb, line 8
def initialize(current_working_directory)
  @current_working_directory = File.absolute_path(current_working_directory)
  @project = nil
end

Public Instance Methods

compile() click to toggle source
# File lib/muwu/controller/controller.rb, line 18
def compile
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderHtml.new(@project).render_all
  end
end
compile_css() click to toggle source
# File lib/muwu/controller/controller.rb, line 28
def compile_css
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderHtml.new(@project).render_css_only
  end
end
compile_html() click to toggle source
# File lib/muwu/controller/controller.rb, line 48
def compile_html
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderHtml.new(@project).render_html_only
  end
end
compile_html_by_index(index) click to toggle source
# File lib/muwu/controller/controller.rb, line 38
def compile_html_by_index(index)
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderHtml.new(@project).render_html_by_index(index)
  end
end
compile_js() click to toggle source
# File lib/muwu/controller/controller.rb, line 58
def compile_js
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderHtml.new(@project).render_js_only
  end
end
concat() click to toggle source
# File lib/muwu/controller/controller.rb, line 68
def concat
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderConcat.new(@project).render
  end
end
inspect() click to toggle source
# File lib/muwu/controller/controller.rb, line 78
def inspect
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    RenderInspector.new(@project).render_inspector
  end
end
new_project() click to toggle source
# File lib/muwu/controller/controller.rb, line 88
def new_project
  metadata = ControllerInteraction.new.request_metadata
  @project = ProjectStarter.new(@current_working_directory, metadata).new_project
  ProjectWriter.new(@project).write
end
publish(args) click to toggle source
# File lib/muwu/controller/controller.rb, line 95
def publish(args)
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    Publish.new(@project, args: args).up
  end
end
reset_compiled() click to toggle source
# File lib/muwu/controller/controller.rb, line 105
def reset_compiled
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    if ControllerInteraction.new.confirm_reset_compiled(@project)
      ProjectResetCompiled.new(@project).reset_compiled
    end
  end
end
reset_css() click to toggle source
# File lib/muwu/controller/controller.rb, line 117
def reset_css
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  elsif ControllerInteraction.new.confirm_reset_css(@project)
    ProjectResetCss.new(@project).reset_css
  end
end
sync_pull(args) click to toggle source
# File lib/muwu/controller/controller.rb, line 127
def sync_pull(args)
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    Sync.new(@project, args: args).pull
  end
end
sync_push(args) click to toggle source
# File lib/muwu/controller/controller.rb, line 137
def sync_push(args)
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    Sync.new(@project, args: args).push
  end
end
view() click to toggle source
# File lib/muwu/controller/controller.rb, line 147
def view
  @project = read_project_from_current_working_directory
  if @project.does_not_have_crucial_files
    reply_folder_does_not_have_valid_project
  else
    Viewer.new(@project)
  end
end

Private Instance Methods

read_project_from_current_working_directory() click to toggle source
# File lib/muwu/controller/controller.rb, line 161
def read_project_from_current_working_directory
  ProjectReader.build { |b| b.load_path(@current_working_directory) }
end
reply_folder_does_not_have_valid_project() click to toggle source
# File lib/muwu/controller/controller.rb, line 166
def reply_folder_does_not_have_valid_project
  puts @project.exceptions
  puts "Is this a Muwu project home folder?"
end