Class: Muwu::DestinationBuilder

Inherits:
Object
  • Object
show all
Includes:
Muwu
Defined in:
lib/muwu/destination_builder/destination_builder.rb

Constant Summary

Constants included from Muwu

GEM_HOME_LIB, GEM_HOME_LIB_MUWU, VERSION

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Muwu

debug, read

Constructor Details

#initializeDestinationBuilder

Returns a new instance of DestinationBuilder.



21
22
23
# File 'lib/muwu/destination_builder/destination_builder.rb', line 21

def initialize
  @destination = Destination.new
end

Instance Attribute Details

#destinationObject

Returns the value of attribute destination.



8
9
10
# File 'lib/muwu/destination_builder/destination_builder.rb', line 8

def destination
  @destination
end

#projectObject

Returns the value of attribute project.



8
9
10
# File 'lib/muwu/destination_builder/destination_builder.rb', line 8

def project
  @project
end

Class Method Details

.build {|builder| ... } ⇒ Object

Yields:

  • (builder)


14
15
16
17
18
# File 'lib/muwu/destination_builder/destination_builder.rb', line 14

def self.build
  builder = new
  yield(builder)
  builder.destination
end

Instance Method Details

#build_css(project) ⇒ Object



26
27
28
29
30
31
# File 'lib/muwu/destination_builder/destination_builder.rb', line 26

def build_css(project)
  depends_on_project(project)
  set_output_class
  set_output_filename_css
  set_output_working_directory
end

#build_html(project, index) ⇒ Object



34
35
36
37
38
39
# File 'lib/muwu/destination_builder/destination_builder.rb', line 34

def build_html(project, index)
  depends_on_project(project)
  set_output_class
  set_output_filename_html(index)
  set_output_working_directory
end

#build_js(project) ⇒ Object



42
43
44
45
46
47
# File 'lib/muwu/destination_builder/destination_builder.rb', line 42

def build_js(project)
  depends_on_project(project)
  set_output_class
  set_output_filename_js
  set_output_working_directory
end

#depends_on_project(project) ⇒ Object



50
51
52
# File 'lib/muwu/destination_builder/destination_builder.rb', line 50

def depends_on_project(project)
  @project = project
end

#set_output_classObject



55
56
57
# File 'lib/muwu/destination_builder/destination_builder.rb', line 55

def set_output_class
  @destination.output_class = @project.output_destination
end

#set_output_filename_cssObject



60
61
62
63
64
# File 'lib/muwu/destination_builder/destination_builder.rb', line 60

def set_output_filename_css
  if @destination.output_class == 'file'
    @destination.output_filename = determine_output_filename_css
  end
end

#set_output_filename_html(index) ⇒ Object



67
68
69
70
71
# File 'lib/muwu/destination_builder/destination_builder.rb', line 67

def set_output_filename_html(index)
  if @destination.output_class == 'file'
    @destination.output_filename = determine_output_filename_html(index)
  end
end

#set_output_filename_jsObject



74
75
76
77
78
# File 'lib/muwu/destination_builder/destination_builder.rb', line 74

def set_output_filename_js
  if @destination.output_class == 'file'
    @destination.output_filename = determine_output_filename_js
  end
end

#set_output_working_directoryObject



81
82
83
84
85
# File 'lib/muwu/destination_builder/destination_builder.rb', line 81

def set_output_working_directory
  if @destination.output_class == 'file'
    @destination.output_working_directory = @project.path_compiled
  end
end