Module: CodeModels::ModelBuilding
- Defined in:
- lib/codemodels/model_building.rb
Class Attribute Summary collapse
-
.verbose ⇒ Object
Returns the value of attribute verbose.
Class Method Summary collapse
- .generate_model_per_file(src, dest, max_nesting = 500, error_handler = nil, &models_generator) ⇒ Object
- .generate_models_in_dir(src, dest, src_extension, dest_extension, max_nesting = 500, error_handler = nil, &model_creator) ⇒ Object
- .handle_model_per_file(src, error_handler = nil, model_handler, &models_generator) ⇒ Object
- .handle_models_in_dir(src, src_extension, error_handler = nil, model_handler, &model_creator) ⇒ Object
- .handle_serialized_models_in_dir(src, src_extension, error_handler = nil, model_handler, &model_creator) ⇒ Object
- .verbose_warn(msg) ⇒ Object
Class Attribute Details
.verbose ⇒ Object
Returns the value of attribute verbose.
8 9 10 |
# File 'lib/codemodels/model_building.rb', line 8 def verbose @verbose end |
Class Method Details
.generate_model_per_file(src, dest, max_nesting = 500, error_handler = nil, &models_generator) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/codemodels/model_building.rb', line 60 def self.generate_model_per_file(src,dest,max_nesting=500,error_handler=nil,&models_generator) if not File.exist? dest verbose_warn "<Model from #{src}>" begin m = models_generator.call(src) LightModels::Serialization.save_model(m,dest,max_nesting) rescue Exception => e if error_handler error_handler.call(src,e) else raise e end end else verbose_warn "skipping #{src} because #{dest} found" end end |
.generate_models_in_dir(src, dest, src_extension, dest_extension, max_nesting = 500, error_handler = nil, &model_creator) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/codemodels/model_building.rb', line 29 def self.generate_models_in_dir(src,dest,src_extension,dest_extension,max_nesting=500,error_handler=nil,&model_creator) verbose_warn "== #{src} -> #{dest} ==" Dir["#{src}/**/*.#{src_extension}"].each do |fd| if File.directory? fd basename = File.basename(fd) generate_models_in_dir("#{src}/#{basename}","#{dest}/#{basename}",src_extension,dest_extension,max_nesting,error_handler,&model_creator) else if File.extname(fd)==".#{src_extension}" translated_simple_name = "#{File.basename(fd, ".#{src_extension}")}.#{dest_extension}" translated_name = "#{dest}/#{translated_simple_name}" verbose_warn "* #{fd} --> #{translated_name}" generate_model_per_file(fd,translated_name,max_nesting,error_handler,&model_creator) end end end end |
.handle_model_per_file(src, error_handler = nil, model_handler, &models_generator) ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/codemodels/model_building.rb', line 46 def self.handle_model_per_file(src,error_handler=nil,model_handler,&models_generator) verbose_warn "<Model from #{src}>" begin m = models_generator.call(src) model_handler.call(src,m) rescue => e if error_handler error_handler.call(src,e) else raise e end end end |
.handle_models_in_dir(src, src_extension, error_handler = nil, model_handler, &model_creator) ⇒ Object
22 23 24 25 26 27 |
# File 'lib/codemodels/model_building.rb', line 22 def self.handle_models_in_dir(src,src_extension,error_handler=nil,model_handler,&model_creator) Dir["#{src}/**/*.#{src_extension}"].each do |fd| verbose_warn "== #{fd} ==" handle_model_per_file(fd,error_handler,model_handler,&model_creator) end end |
.handle_serialized_models_in_dir(src, src_extension, error_handler = nil, model_handler, &model_creator) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/codemodels/model_building.rb', line 15 def self.handle_serialized_models_in_dir(src,src_extension,error_handler=nil,model_handler,&model_creator) Dir["#{src}/**/*.#{src_extension}"].each do |fd| verbose_warn "== #{fd} ==" handle_serialized_model_per_file(fd,error_handler,model_handler,&model_creator) end end |
.verbose_warn(msg) ⇒ Object
11 12 13 |
# File 'lib/codemodels/model_building.rb', line 11 def self.verbose_warn(msg) warn(msg) if verbose end |