Sha256: 867569d962c84f770265fe742fc874f010f7948543bb511edf9ef3762fe24d7a

Contents?: true

Size: 1.6 KB

Versions: 19

Compression:

Stored size: 1.6 KB

Contents

Execute.define_task do
  desc "routes", "Prints out routes defined in the application"
  def routes
    puts ""
    puts "\tYour Application [#{Dir.pwd}] has the following routes map:"
    puts ""
    start_list = []
    begin
      redis_array = config[:redis]
      redis_array.each do |redis_inst|
        start_list << redis_inst unless RedisRunner.running?(redis_inst)
      end
      RedisRunner.startbg(start_list) unless start_list.empty?

      require 'rhoconnect/application/init'
      Rhoconnect::Server.set     :secret,      'temp_secret'
      Rhoconnect.url_map.each do |root, controller|
        puts "  #{controller.helpers.class.name}: #{root}"
        controller.helpers.class.paths.each do |verb, paths|
          paths.each do |path|
            puts "    --> #{verb.to_s.upcase}\t #{path}"
          end
        end
        # also , look in superclasses
        klass = controller.helpers.class
        superklass = controller.helpers.class.superclass
        until superklass.nil? or (superklass.name == "Sinatra::Base")
          superklass.paths.each do |verb, paths|
            paths.each do |path|
              puts "    --> #{verb.to_s.upcase}\t #{path}\t (defined in #{superklass.name})"
            end
          end
          klass = superklass
          superklass = klass.superclass
        end
      end
    rescue Exception => e
      Rhoconnect.log "#{e.inspect}"
    ensure
      Rhoconnect.shutdown
      # TODO: Something is wrong here on Windows!!!
      # if I use RedisRunner.stop - process hangs for several seconds
      system("rhoconnect redis-stop") unless start_list.empty?
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
rhoconnect-7.6.0 commands/rhoconnect/routes.rb
rhoconnect-7.5.1 commands/rhoconnect/routes.rb
rhoconnect-7.4.1 commands/rhoconnect/routes.rb
rhoconnect-7.1.17 commands/rhoconnect/routes.rb
rhoconnect-6.2.0 commands/rhoconnect/routes.rb
rhoconnect-6.0.11 commands/rhoconnect/routes.rb
rhoconnect-5.5.18 commands/rhoconnect/routes.rb
rhoconnect-5.5.17 commands/rhoconnect/routes.rb
rhoconnect-5.5.15 commands/rhoconnect/routes.rb
rhoconnect-5.5.0.22 commands/rhoconnect/routes.rb
rhoconnect-5.5.2 commands/rhoconnect/routes.rb
rhoconnect-5.5.0.7 commands/rhoconnect/routes.rb
rhoconnect-5.5.0.3 commands/rhoconnect/routes.rb
rhoconnect-5.5.0 commands/rhoconnect/routes.rb
rhoconnect-5.1.1 commands/rhoconnect/routes.rb
rhoconnect-4.0.4 commands/rhoconnect/routes.rb
rhoconnect-4.0.3 commands/rhoconnect/routes.rb
rhoconnect-4.0.2 commands/rhoconnect/routes.rb
rhoconnect-4.0.1 commands/rhoconnect/routes.rb