Class: Roebe::CreateISO
- Inherits:
-
Base
show all
- Defined in:
- lib/roebe/classes/create_iso.rb
Overview
Constant Summary
collapse
- DEFAULT_DIRECTORY =
'/Depot/ISOs/'
Constants inherited
from Base
Base::COLOURS, Base::HOME_DIRECTORY_OF_USER_X, Base::N, Base::NAMESPACE
Instance Method Summary
collapse
Methods inherited from Base
#actions, #append_this_onto_that_file, #append_what_into, #be_silent, #be_verbose?, #beautiful_url, #burlywood, #call_next, #chdir, #cheerful_guy, #cliner, #complex_esystem, #convert_global_env, #copy_directory, #copy_file, #cornflowerblue, #create_directory, #crimson, #current_month?, #current_time?, #current_year?, #cyan, #darkcyan, #darkgreen, #darkkhaki, #darkslateblue, #deeppink, #delete_symlink, #do_not_use_the_base_colours, #do_use_the_base_colours, #e, #ecomment, #editor_to_use?, #efancy, #eimp, #emphasis, #ensure_main_encoding, #ensure_utf_encoding, #eparse, #erev, #esteelblue, #etomato, #ewarn, #exit_program, #firebrick, #get_current_day, #get_current_month, #get_files_and_directories, #get_files_from, #get_german_name_for_this_weekday, #gold, #green, #grey, #hh_mm_ss, #hh_mm_ss_day_month_year, #home_dir?, #home_directory_of_user_x?, #infer_the_namespace, #internal_hash?, #is_a_directory?, #is_a_file?, #is_a_jpg_file?, #is_an_image_file?, #is_archive?, #is_audio_file?, #is_in_studium_dir?, #is_multimedia_file?, #is_on_roebe?, #is_on_windows?, #is_studium_available?, #is_symlink?, #is_this_a_ruby_file?, #is_video_file?, #iso_encoding?, #le, #left_colour, #lightblue, #lightgreen, #lightseagreen, #lightsteelblue, #lime, #limegreen, #localhost_to_data, #log_directory?, #main_encoding?, #mediumorchid, #mediumpurple, #mediumseagreen, #mediumslateblue, #mediumspringgreen, #mediumturquoise, #mkdir_p, #mv, #n_days_in_this_month, #n_pages_in_this_pdf_file?, #namespace?, #no_file_exists_at, #ogrey, #olive, #olivedrab, #open_in_browser, #opne, #opnesystem, #opnn, #orange, #orchid, #orev, #palegoldenrod, #palevioletred, #pink, #powderblue, #programs_dir?, #project_base_dir?, #random_html_colour, #rds, #read_file_in_iso_encoding, #read_file_via_the_default_encoding, #read_lines_via_iso_encoding, #readlines_with_main_encoding, #red, #register_sigint, #remove, #remove_directory, #remove_file, #rename_kde_konsole_tab, #replace_localhost_with_data, #report_pwd, #require_rescue, #reset_the_internal_hash, #return_all_directories_from_this_directory, #return_all_files_from_this_directory, #return_current_directory, #return_dd_mm_yyyy, #return_file_or_directory_of, #return_files_from_pwd, #return_last_part_of_the_current_directory, #return_utc, #rev, #right_arrow?, #right_colour, #roebe_log_directory?, #rosybrown, #royalblue, #ruby_base_directory?, #run_in_background, #run_rcfiles_then_run_ata_via_qdbus, #sandybrown, #sdir, #seagreen, #set_be_verbose, #set_xorg_buffer, #sfancy, #sfile, #show_help, #silent_redirection?, #simp, #simple_esystem, #skyblue, #slateblue, #slategray, #springgreen, #steelblue, #string_italic, #swarn, #symlink, #teal, #temp_dir?, #to_camelcase, #to_counted_hash, #tomato, #touch, #try_to_require_the_beautiful_url_gem, #try_to_require_the_html_template, #try_to_require_the_open_gem, #try_to_require_the_program_information_gem, #try_to_require_the_xorg_buffer, #use_colours?, #verbose_truth, #weekday?, #word_wrap, #write_what_into, #yellow
#append_onto_the_commandline_arguments, #clear_commandline_arguments, #commandline_arguments?, #commandline_arguments_as_string?, #commandline_arguments_without_leading_hyphens?, #first_argument?, #first_argument_without_leading_hyphens?, #has_an_argument_been_passed?, #remove_hyphened_arguments_from_the_commandline_arguments, #return_commandline_arguments_with_leading_hyphens, #second_argument?, #set_commandline_arguments
Constructor Details
#initialize(i = DEFAULT_DIRECTORY, run_already = true) ⇒ CreateISO
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
58
59
60
61
|
# File 'lib/roebe/classes/create_iso.rb', line 32
def initialize(
i = DEFAULT_DIRECTORY,
run_already = true
)
reset
set_input(i)
case run_already
when :dont_run_yet
run_already = false
when :default
run_already = true
end
if block_given?
yielded = yield
if yielded.is_a? Hash
if yielded.has_key? :output_name
set_output_name(
yielded.delete(:output_name).to_s
)
end
end
end
run if run_already
end
|
Instance Method Details
#build_sys_command ⇒ Object
Also known as:
update
#
build_sys_command
This method will build the system-command that will be used, based on the binary called “mkisofs”.
#
113
114
115
116
117
118
|
# File 'lib/roebe/classes/create_iso.rb', line 113
def build_sys_command
@cmd = 'mkisofs -J -r -v'.dup
@cmd << ' -V '+dd_mm_yyyy
@cmd << ' -o '+final_location_of_new_iso?
@cmd << ' '+use_this_directory
end
|
#cmd? ⇒ Boolean
123
124
125
|
# File 'lib/roebe/classes/create_iso.rb', line 123
def cmd?
@cmd
end
|
#final_location_of_new_iso? ⇒ Boolean
Also known as:
final_location_of_new_iso, output?
#
final_location_of_new_iso?
#
102
103
104
|
# File 'lib/roebe/classes/create_iso.rb', line 102
def final_location_of_new_iso?
@output
end
|
95
96
97
|
# File 'lib/roebe/classes/create_iso.rb', line 95
def input?
@input.to_s
end
|
#
report
Use this method to report to the user.
#
171
172
173
174
175
176
177
178
179
|
# File 'lib/roebe/classes/create_iso.rb', line 171
def report
_ = output?
_ = File.absolute_path(_) if File.exist? _
opne "Finished creating the (.iso) file `#{sfancy(_)}`."
else
opnn; no_file_exists_at(_)
end
end
|
66
67
68
69
70
71
72
73
74
75
76
|
# File 'lib/roebe/classes/create_iso.rb', line 66
def reset
super()
infer_the_namespace
@be_verbose = true set_input
set_output
build_sys_command end
|
184
185
186
|
# File 'lib/roebe/classes/create_iso.rb', line 184
def run
run_everything
end
|
#run_everything ⇒ Object
159
160
161
162
163
164
|
# File 'lib/roebe/classes/create_iso.rb', line 159
def run_everything
build_sys_command
e cmd? if be_verbose?
system(cmd?)
report if be_verbose?
end
|
#
The input to this method should be an existing directory.
#
83
84
85
86
87
88
89
90
|
# File 'lib/roebe/classes/create_iso.rb', line 83
def set_input(
i = DEFAULT_DIRECTORY
)
i = i.first if i.is_a? Array
i = DEFAULT_DIRECTORY if i.nil?
i = i.to_s.dup if i
@input = i
end
|
#set_output(i = 'output.iso', include_current_day_in_the_file = true) ⇒ Object
Also known as:
output=, set_output_name
#
set_output
This method is required for our output of the .iso file at hand.
If the second argument to this method is true, then we will also add the current time in the .iso file at hand.
#
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
|
# File 'lib/roebe/classes/create_iso.rb', line 135
def set_output(
i = 'output.iso',
include_current_day_in_the_file = true
)
i = i.to_s.dup
if include_current_day_in_the_file
current_day = '_'+dd_mm_yyyy
i << current_day
end
i << '.iso' unless i.end_with? '.iso'
@output = i
end
|