Commit 23d371753b1be6b42b8226584ee340296db8994a
Committed by
Alessandro Palmeira
1 parent
87eafae0
Exists in
master
and in
22 other branches
[Mezuro] refactoring save and edit in metric configuration views
Showing
3 changed files
with
42 additions
and
25 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
| @@ -48,42 +48,31 @@ class MezuroPluginProfileController < ProfileController | @@ -48,42 +48,31 @@ class MezuroPluginProfileController < ProfileController | ||
| 48 | end | 48 | end |
| 49 | 49 | ||
| 50 | def new_metric_configuration | 50 | def new_metric_configuration |
| 51 | - | ||
| 52 | metric_name = params[:metric_name] | 51 | metric_name = params[:metric_name] |
| 53 | - @configuration_name = params[:configuration_name] | ||
| 54 | collector_name = params[:collector_name] | 52 | collector_name = params[:collector_name] |
| 55 | - | ||
| 56 | collector = Kalibro::Client::BaseToolClient.new.base_tool(collector_name) | 53 | collector = Kalibro::Client::BaseToolClient.new.base_tool(collector_name) |
| 57 | @metric = collector.supported_metrics.find {|metric| metric.name == metric_name} | 54 | @metric = collector.supported_metrics.find {|metric| metric.name == metric_name} |
| 55 | + @configuration_name = params[:configuration_name] | ||
| 58 | end | 56 | end |
| 59 | 57 | ||
| 60 | def edit_metric_configuration | 58 | def edit_metric_configuration |
| 61 | - @configuration_name = params[:configuration_name] | ||
| 62 | metric_name = params[:metric_name] | 59 | metric_name = params[:metric_name] |
| 60 | + @configuration_name = params[:configuration_name] | ||
| 63 | @metric_configuration = Kalibro::Client::MetricConfigurationClient.new.metric_configuration(@configuration_name, metric_name) | 61 | @metric_configuration = Kalibro::Client::MetricConfigurationClient.new.metric_configuration(@configuration_name, metric_name) |
| 62 | + @metric = @metric_configuration.metric | ||
| 64 | end | 63 | end |
| 65 | 64 | ||
| 66 | def create_metric_configuration | 65 | def create_metric_configuration |
| 67 | @configuration_name = params[:configuration_name] | 66 | @configuration_name = params[:configuration_name] |
| 68 | - metric_configuration = Kalibro::Entities::MetricConfiguration.new | ||
| 69 | - metric_configuration.metric = Kalibro::Entities::NativeMetric.new | ||
| 70 | - metric_configuration.metric.name = params[:metric][:name] | ||
| 71 | - metric_configuration.metric.description = params[:description] | ||
| 72 | - metric_configuration.metric.origin = params[:metric][:origin] | ||
| 73 | - metric_configuration.metric.scope = params[:scope] | ||
| 74 | - metric_configuration.metric.language = params[:language] | ||
| 75 | - metric_configuration.code = params[:metric_configuration][:code] | ||
| 76 | - metric_configuration.weight = params[:metric_configuration][:weight] | ||
| 77 | - metric_configuration.aggregation_form = params[:metric_configuration][:aggregation] | ||
| 78 | - | 67 | + metric_configuration = set_metric_configuration(params) |
| 79 | Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) | 68 | Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) |
| 80 | - | ||
| 81 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" | 69 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" |
| 82 | end | 70 | end |
| 83 | 71 | ||
| 84 | def update_metric_configuration | 72 | def update_metric_configuration |
| 85 | @configuration_name = params[:configuration_name] | 73 | @configuration_name = params[:configuration_name] |
| 86 | - # raise @configuration_name.inspect | 74 | + metric_configuration = set_metric_configuration(params) |
| 75 | + Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) | ||
| 87 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" | 76 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" |
| 88 | end | 77 | end |
| 89 | 78 | ||
| @@ -99,5 +88,23 @@ class MezuroPluginProfileController < ProfileController | @@ -99,5 +88,23 @@ class MezuroPluginProfileController < ProfileController | ||
| 99 | @range.color = params[:range][:color] | 88 | @range.color = params[:range][:color] |
| 100 | @range.comments = params[:range][:comments] | 89 | @range.comments = params[:range][:comments] |
| 101 | end | 90 | end |
| 91 | + | ||
| 92 | + private | ||
| 93 | + | ||
| 94 | + def set_metric_configuration(params) #FIXME isso foi feito para evitar duplicar o codigo de create e update metric configuration, faça de um jeito melhor | ||
| 95 | + metric_configuration = Kalibro::Entities::MetricConfiguration.new | ||
| 96 | + metric_configuration.metric = Kalibro::Entities::NativeMetric.new | ||
| 97 | + metric_configuration.metric.name = params[:metric][:name] | ||
| 98 | + metric_configuration.metric.description = params[:description] | ||
| 99 | + metric_configuration.metric.origin = params[:metric][:origin] | ||
| 100 | + metric_configuration.metric.scope = params[:scope] | ||
| 101 | + metric_configuration.metric.language = params[:language] | ||
| 102 | + metric_configuration.code = params[:metric_configuration][:code] | ||
| 103 | + metric_configuration.weight = params[:metric_configuration][:weight] | ||
| 104 | + metric_configuration.aggregation_form = params[:metric_configuration][:aggregation] | ||
| 105 | + | ||
| 106 | + metric_configuration | ||
| 107 | + end | ||
| 108 | + | ||
| 102 | end | 109 | end |
| 103 | 110 |
plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb
| 1 | <h2><%= @configuration_name %> Configuration</h2> | 1 | <h2><%= @configuration_name %> Configuration</h2> |
| 2 | 2 | ||
| 3 | -<% form_for @metric_configuration, :url => {:action =>"update_metric_configuration", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %> | 3 | +<% form_for :metric_configuration, :url => {:action =>"update_metric_configuration", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %> |
| 4 | <%= hidden_field_tag :configuration_name, @configuration_name %> | 4 | <%= hidden_field_tag :configuration_name, @configuration_name %> |
| 5 | + <%= hidden_field_tag :scope, @metric.scope %> | ||
| 6 | + | ||
| 7 | + <% @metric.language.each do |language| %> | ||
| 8 | + <%= hidden_field_tag "language[]", language %> | ||
| 9 | + <% end %> | ||
| 10 | + | ||
| 5 | <p> | 11 | <p> |
| 6 | - <%= f.label :collector_name, "Collector Name:" %> | ||
| 7 | - <%= @metric_configuration.metric.origin %> | ||
| 8 | - <%= hidden_field_tag "metric[origin]", @metric_origin %> | 12 | + <%= f.label :origin, "Collector Name:" %> |
| 13 | + <%= @metric.origin %> | ||
| 14 | + <%= hidden_field_tag "metric[origin]", @metric.origin %> | ||
| 9 | </p> | 15 | </p> |
| 10 | <p> | 16 | <p> |
| 11 | <%= f.label :metric_name, "Metric Name:" %> | 17 | <%= f.label :metric_name, "Metric Name:" %> |
| 12 | - <%= @metric_configuration.metric.name %> | ||
| 13 | - <%= hidden_field_tag "metric[name]", @metric_name %> | 18 | + <%= @metric.name %> |
| 19 | + <%= hidden_field_tag "metric[name]", @metric.name %> | ||
| 20 | + </p> | ||
| 21 | + <p> | ||
| 22 | + <%= f.label :description, "Description:" %> | ||
| 23 | + <%= @metric.description %> | ||
| 24 | + <%= text_field_tag "metric[description]", @metric.description %> | ||
| 14 | </p> | 25 | </p> |
| 15 | <p> | 26 | <p> |
| 16 | <%= f.label :code, "Code:" %> | 27 | <%= f.label :code, "Code:" %> |
plugins/mezuro/views/mezuro_plugin_profile/new_metric_configuration.html.erb
| @@ -5,10 +5,9 @@ | @@ -5,10 +5,9 @@ | ||
| 5 | <%= hidden_field_tag :scope, @metric.scope %> | 5 | <%= hidden_field_tag :scope, @metric.scope %> |
| 6 | 6 | ||
| 7 | <% @metric.language.each do |language| %> | 7 | <% @metric.language.each do |language| %> |
| 8 | - <%= hidden_field_tag "language[]", language %> | 8 | + <%= hidden_field_tag "language[]", language %> |
| 9 | <% end %> | 9 | <% end %> |
| 10 | 10 | ||
| 11 | - | ||
| 12 | <p> | 11 | <p> |
| 13 | <%= f.label :origin, "Collector Name:" %> | 12 | <%= f.label :origin, "Collector Name:" %> |
| 14 | <%= @metric.origin %> | 13 | <%= @metric.origin %> |