lib/railroady/app_diagram.rb in railroady-1.5.3 vs lib/railroady/app_diagram.rb in railroady-1.6.0

- old
+ new

@@ -1,11 +1,5 @@ -# RailRoady - RoR diagrams generator -# http://railroad.rubyforge.org -# -# Copyright 2007-2008 - Javier Smaldone (http://www.smaldone.com.ar) -# See COPYING for more details - require 'railroady/diagram_graph' # Root class for RailRoady diagrams class AppDiagram def initialize(options = OptionsStruct.new) @@ -16,29 +10,29 @@ end # Print diagram def print if @options.output - old_stdout = STDOUT.dup + old_stdout = $stdout.dup begin - STDOUT.reopen(@options.output) + $stdout.reopen(@options.output) rescue - STDERR.print "Error: Cannot write diagram to #{@options.output}\n\n" + $stderr.print "Error: Cannot write diagram to #{@options.output}\n\n" exit 2 end end if @options.xmi - STDERR.print "Generating XMI diagram\n" if @options.verbose - STDOUT.print @graph.to_xmi + $stderr.print "Generating XMI diagram\n" if @options.verbose + $stdout.print @graph.to_xmi else - STDERR.print "Generating DOT graph\n" if @options.verbose - STDOUT.print @graph.to_dot + $stderr.print "Generating DOT graph\n" if @options.verbose + $stdout.print @graph.to_dot end - STDOUT.reopen(old_stdout) if @options.output - end # print + $stdout.reopen(old_stdout) if @options.output + end def process load_environment end @@ -59,45 +53,45 @@ private # Load Rails application's environment def load_environment - STDERR.print "Loading application environment\n" if @options.verbose + $stderr.print "Loading application environment\n" if @options.verbose begin disable_stdout l = File.join(Dir.pwd.to_s, @options.config_file) require l enable_stdout rescue LoadError enable_stdout print_error 'application environment' raise end - STDERR.print "Loading application classes as we go\n" if @options.verbose + $stderr.print "Loading application classes as we go\n" if @options.verbose end # Prevents Rails application from writing to STDOUT def disable_stdout - @old_stdout = STDOUT.dup + @old_stdout = $stdout.dup # via Tomas Matousek, http://www.ruby-forum.com/topic/205887 - STDOUT.reopen(::RUBY_PLATFORM =~ /djgpp|(cyg|ms|bcc)win|mingw/ ? 'NUL' : '/dev/null') + $stdout.reopen(::RUBY_PLATFORM =~ /djgpp|(cyg|ms|bcc)win|mingw/ ? 'NUL' : '/dev/null') end # Restore STDOUT def enable_stdout - STDOUT.reopen(@old_stdout) + $stdout.reopen(@old_stdout) end # Print error when loading Rails application def print_error(type) - STDERR.print "Error loading #{type}.\n (Are you running " \ + $stderr.print "Error loading #{type}.\n (Are you running " \ "#{@options.app_name} on the application's root directory?)\n\n" end # Extract class name from filename def extract_class_name(filename) # filename.split('/')[2..-1].join('/').split('.').first.camelize # Fixed by patch from ticket #12742 # File.basename(filename).chomp(".rb").camelize filename.split('/')[2..-1].collect(&:camelize).join('::').chomp('.rb') end -end # class AppDiagram +end