class Sawa
Constants
- GEMROOT
- ROOT
- VERSION
Public Class Methods
new(options)
click to toggle source
# File lib/sawa.rb, line 8 def initialize(options) puts options @config = YAML.load_file("#{ROOT}/#{options[1]}") @work = MiniWork.new(options[0], @config) @JSRC_PATH = "#{ROOT}/www/src" @XML_PATH = "#{ROOT}/resources" @MODEL_PATH = "#{ROOT}/src/" + @config['packageModel'].split('.').join("/") @DAO_PATH = "#{ROOT}/src/" + @config['packageDao'].split('.').join("/") @RES_PATH = "#{ROOT}/src/" + @config['packageResource'].split('.').join("/") @API_PATH = "#{ROOT}/src/" + @config['packageApi'].split('.').join("/") @TPL_PATH = "#{GEMROOT}/sawa/tpl" end
Public Instance Methods
generate_code()
click to toggle source
# File lib/sawa.rb, line 21 def generate_code #mkdir FileUtils.mkdir_p @MODEL_PATH FileUtils.mkdir_p @DAO_PATH FileUtils.mkdir_p @RES_PATH FileUtils.mkdir_p @API_PATH #create_model @work.sheets.each do |name, sheet| sheet.template_file = "#{@TPL_PATH}/model.mustache" str_model = sheet.render File.open("#{@MODEL_PATH}/#{sheet.model_name}.java", 'w') { |file| file.write(str_model) } end #create_dao @work.sheets.each do |name, sheet| sheet.template_file = "#{@TPL_PATH}/dao.mustache" str_dao = sheet.render File.open("#{@DAO_PATH}/#{sheet.dao_name}.java", 'w') { |file| file.write(str_dao) } end #create_resource @work.sheets.each do |name, sheet| sheet.template_file = "#{@TPL_PATH}/resource.mustache" str_resource = sheet.render File.open("#{@RES_PATH}/#{sheet.resource_name}.java", 'w') { |file| file.write(str_resource) } end #create_api @work.sheets.each do |name, sheet| sheet.template_file = "#{@TPL_PATH}/api.mustache" str_api = sheet.render File.open("#{@API_PATH}/#{sheet.api_name}.java", 'w') { |file| file.write(str_api) } end #crud.xml @work.template_file = "#{@TPL_PATH}/crud.mustache" str_crud = @work.render File.open("#{@XML_PATH}/crud.xml", 'w') { |file| file.write(str_crud) } #property.properties @work.template_file = "#{@TPL_PATH}/property.mustache" str_property = @work.render File.open("#{@XML_PATH}/property.properties", 'w') { |file| file.write(str_property) } #Routes.js @work.template_file = "#{@TPL_PATH}/routes.js.mustache" str_routes_js = @work.render File.open("#{@JSRC_PATH}/Routes.js", 'w') { |file| file.write(str_routes_js) } #Toolbar.js @work.template_file = "#{@TPL_PATH}/toolbar.js.mustache" str_toolbar_js = @work.render File.open("#{@JSRC_PATH}/Toolbar.js", 'w') { |file| file.write(str_toolbar_js) } #Source.js @work.template_file = "#{@TPL_PATH}/source.js.mustache" str_source_js = @work.render File.open("#{@JSRC_PATH}/Source.js", 'w') { |file| file.write(str_source_js) } #pages @work.sheets.each do |name, sheet| sheet.template_file = "#{@TPL_PATH}/page.js.mustache" str_page_js = sheet.render File.open("#{@JSRC_PATH}/pages/#{sheet.page_name}.js", 'w') { |file| file.write(str_page_js) } end "code generate finish" end