From b1cc1778b3e18b5f0ea2121afc6a72670f4df010 Mon Sep 17 00:00:00 2001 From: Teryk Bellahsene Date: Thu, 29 Oct 2015 17:42:33 +0100 Subject: [PATCH] SONAR-5851 Add back the WS /profiles/export web page --- .../app/controllers/profiles_controller.rb | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/controllers/profiles_controller.rb b/server/sonar-web/src/main/webapp/WEB-INF/app/controllers/profiles_controller.rb index a1316df9366..aa8d7613397 100644 --- a/server/sonar-web/src/main/webapp/WEB-INF/app/controllers/profiles_controller.rb +++ b/server/sonar-web/src/main/webapp/WEB-INF/app/controllers/profiles_controller.rb @@ -36,4 +36,25 @@ class ProfilesController < ApplicationController render :action => 'index' end + # GET /profiles/export?name=&language=&format= + def export + language = params[:language] + if params[:name].blank? + profile = Internal.qprofile_service.getDefault(language) + else + profile = Internal.qprofile_loader.getByLangAndName(language, CGI::unescape(params[:name])) + end + not_found('Profile not found') unless profile + + if params[:format].blank? + # standard sonar format + result = Internal.qprofile_service.backup(profile.getKee()) + send_data(result, :type => 'text/xml', :disposition => 'inline') + else + exporter_key = params[:format] + result = Internal.qprofile_exporters.export(profile.getKee(), exporter_key) + send_data(result, :type => Internal.qprofile_exporters.mimeType(exporter_key), :disposition => 'inline') + end + end + end -- 2.39.5