class DTRipperProjectCreator::DTModuleGenerator
Public Class Methods
new(module_name,module_dir=File.dirname(__FILE__),main_proj_name="MainProject", main_proj_dir=nil)
click to toggle source
# File lib/DTRipperProjectCreator.rb, line 162 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
Public Instance Methods
config()
click to toggle source
# File lib/DTRipperProjectCreator.rb, line 172 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 at 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()
click to toggle source
# File lib/DTRipperProjectCreator.rb, line 201 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 return DTMainProjectGenerator.new(@main_proj_name,@main_proj_dir).create end #create module project result = 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 if result config end end