From a74d2a51765e1270d790a1ad14384d58aa2530c4 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Tue, 14 Apr 2015 09:15:46 +0200 Subject: [PATCH] SONAR-5851 temporary resurrect profiles/export RoR API --- .../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 28a940f72ec..0c815c44eab 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 @@ -28,4 +28,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