Class: DTRipperProjectCreator::DTModuleGenerator
- Inherits:
-
Object
- Object
- DTRipperProjectCreator::DTModuleGenerator
- Defined in:
- lib/DTRipperProjectCreator.rb
Instance Method Summary collapse
- #config ⇒ Object
- #create ⇒ Object
-
#initialize(module_name, module_dir = File.dirname(__FILE__), main_proj_name = "MainProject", main_proj_dir = nil) ⇒ DTModuleGenerator
constructor
A new instance of DTModuleGenerator.
Constructor Details
#initialize(module_name, module_dir = File.dirname(__FILE__), main_proj_name = "MainProject", main_proj_dir = nil) ⇒ DTModuleGenerator
Returns a new instance of DTModuleGenerator.
161 162 163 164 165 166 167 168 169 |
# File 'lib/DTRipperProjectCreator.rb', line 161 def initialize(module_name,module_dir=File.dirname(__FILE__),main_proj_name="MainProject", main_proj_dir=nil) @module_dir = module_dir @module_name = module_name @main_proj_dir = main_proj_dir @main_proj_name = main_proj_name if main_proj_dir == nil @main_proj_dir = module_dir end end |
Instance Method Details
#config ⇒ Object
171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 |
# File 'lib/DTRipperProjectCreator.rb', line 171 def config workspace_file_dir = File.join(@main_proj_dir,@main_proj_name,"#{@main_proj_name}.xcworkspace") main_proj_file_dir = File.join @main_proj_dir ,@main_proj_name , "#{@main_proj_name}.xcodeproj" module_proj_file_dir = File.join(@module_dir,@module_name,"#{@module_name}.xcodeproj") podfile_dir = File.join @main_proj_dir ,@main_proj_name , "Podfile" if !File.exists?(main_proj_file_dir) puts "Did not found main project.Path:'#{main_proj_file_dir}'" return end File.open(podfile_dir,"r:utf-8") do |fr| buffer = fr.read if !buffer.include?("#{@module_name}") endIndex = buffer.index("end") puts endIndex buffer.insert(endIndex," pod '#{@module_name}', :path => '#{File.join(@module_dir,@module_name)}' \n") File.open(podfile_dir, "w:utf-8") { |fw| fw.write(buffer) } end end workspace = DTMainProjectGenerator.create_workspace(@main_proj_dir,@main_proj_name) workspace << module_proj_file_dir workspace.save_as workspace_file_dir exec "pod install --project-directory=#{File.join(@main_proj_dir,@main_proj_name)}" end |
#create ⇒ Object
200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 |
# File 'lib/DTRipperProjectCreator.rb', line 200 def create main_proj_file_dir = File.join @main_proj_dir ,@main_proj_name , "#{@main_proj_name}.xcodeproj" if !File.exists? main_proj_file_dir #create main project DTMainProjectGenerator.new(@main_proj_name,@main_proj_dir).create end #create module project ProjectReplacer.new(@module_name,@module_dir, TEMPLETE_MODULE_PROJECT_ZIP_FILE_NAME, TEMPLETE_MODULE_PROJECT_DOWNLOAD_URL, TEMPLETE_MODULE_PROJECT_ROOT_FOLDER, REPLACEABLE_STRING_REX).replace config end |