Sha256: 513cb5a3cc1d64eefe03c83277cde7d9131f1a1c243be47d8e811b1310875865

Contents?: true

Size: 603 Bytes

Versions: 6

Compression:

Stored size: 603 Bytes

Contents

module TranslationEngine
  class KeysMiddleware

    URL_PATH = /\A\/translation_engine\/keys/

    def initialize(app)
      @app = app
    end

    def call(env)
      if env['PATH_INFO'] =~ URL_PATH
        handle_redirect_request(env)
      else
        @app.call(env)
      end
    end

    private

    def handle_redirect_request(env)
      key_path = env['PATH_INFO'].gsub(URL_PATH, '')

      [
        302,
        {
          'Location' => "#{TranslationEngine.api_host}/#{key_path}",
          'Content-Type' => 'text/html'
        },
        ['Moved Temporarily']
      ]
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
translation_engine-0.1.0 app/middlewares/translation_engine/keys_middleware.rb
translation_engine-0.0.8 app/middlewares/translation_engine/keys_middleware.rb
translation_engine-0.0.7 app/middlewares/translation_engine/keys_middleware.rb
translation_engine-0.0.5 app/middlewares/translation_engine/keys_middleware.rb
translation_engine-0.0.4 app/middlewares/translation_engine/keys_middleware.rb
translation_engine-0.0.3 app/middlewares/translation_engine/keys_middleware.rb