Commit 9075c17a66b606beeccbc0e4d68e43d365e25380

Authored by Caio Salgado + Rafael Manzo
Committed by Paulo Meireles
1 parent 307f8268

[Mezuro] Refactored update_metric_configuration and update_compound_metric_configuration

plugins/mezuro/controllers/mezuro_plugin_myprofile_controller.rb
... ... @@ -43,34 +43,22 @@ class MezuroPluginMyprofileController < ProfileController
43 43 end
44 44  
45 45 def create_metric_configuration
46   - metric_configuration = new_metric_configuration_instance
47   - generic_metric_configuration_creation(metric_configuration)
  46 + generic_metric_configuration_creation(new_metric_configuration_instance)
48 47 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
49 48 end
50 49  
51 50 def create_compound_metric_configuration
52   - compound_metric_configuration = new_compound_metric_configuration_instance
53   - generic_metric_configuration_creation(compound_metric_configuration)
  51 + generic_metric_configuration_creation(new_compound_metric_configuration_instance)
54 52 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
55 53 end
56 54  
57 55 def update_metric_configuration
58   - @configuration_name = params[:configuration_name]
59   - metric_name = params[:metric_configuration][:metric][:name]
60   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
61   - metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, metric_name)
62   - metric_configuration = assign_metric_configuration_instance(metric_configuration)
63   - metric_configuration_client.save(metric_configuration, @configuration_name)
  56 + auxiliar_update_metric_configuration(MezuroPlugin::MetricConfigurationContent::NATIVE_TYPE)
64 57 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
65 58 end
66 59  
67 60 def update_compound_metric_configuration
68   - @configuration_name = params[:configuration_name]
69   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
70   - metric_name = params[:metric_configuration][:metric][:name]
71   - compound_metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, metric_name)
72   - compound_metric_configuration = assign_compound_metric_configuration_instance(compound_metric_configuration)
73   - metric_configuration_client.save(compound_metric_configuration, @configuration_name)
  61 + auxiliar_update_metric_configuration(MezuroPlugin::MetricConfigurationContent::COMPOUND_TYPE)
74 62 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
75 63 end
76 64  
... ... @@ -140,41 +128,44 @@ class MezuroPluginMyprofileController < ProfileController
140 128 def new_metric_configuration_instance
141 129 metric_configuration = Kalibro::Entities::MetricConfiguration.new
142 130 metric_configuration.metric = Kalibro::Entities::NativeMetric.new
143   - assign_metric_configuration_instance (metric_configuration)
  131 + assign_metric_configuration_instance(metric_configuration, MezuroPlugin::MetricConfigurationContent::NATIVE_TYPE)
144 132 end
145 133  
146 134 def new_compound_metric_configuration_instance
147 135 metric_configuration = Kalibro::Entities::MetricConfiguration.new
148 136 metric_configuration.metric = Kalibro::Entities::CompoundMetric.new
149   - assign_compound_metric_configuration_instance (metric_configuration)
  137 + assign_metric_configuration_instance(metric_configuration, MezuroPlugin::MetricConfigurationContent::COMPOUND_TYPE)
150 138 end
151 139  
152   - def assign_metric_configuration_instance(metric_configuration)
153   - assign_generic_metric_configuration(metric_configuration)
154   - metric_configuration.metric.origin = params[:metric_configuration][:metric][:origin]
155   - metric_configuration.metric.language = params[:metric_configuration][:metric][:language]
156   - metric_configuration
157   - end
158   -
159   - def assign_compound_metric_configuration_instance(metric_configuration)
160   - assign_generic_metric_configuration(metric_configuration)
161   - metric_configuration.metric.script = params[:metric_configuration][:metric][:script]
162   - metric_configuration
163   - end
164   -
165   - def assign_generic_metric_configuration(metric_configuration)
  140 + def assign_metric_configuration_instance(metric_configuration, type=MezuroPlugin::MetricConfigurationContent::NATIVE_TYPE)
166 141 metric_configuration.metric.name = params[:metric_configuration][:metric][:name]
167 142 metric_configuration.metric.description = params[:metric_configuration][:metric][:description]
168 143 metric_configuration.metric.scope = params[:metric_configuration][:metric][:scope]
169 144 metric_configuration.code = params[:metric_configuration][:code]
170 145 metric_configuration.weight = params[:metric_configuration][:weight]
171 146 metric_configuration.aggregation_form = params[:metric_configuration][:aggregation_form]
  147 +
  148 + if type == MezuroPlugin::MetricConfigurationContent::NATIVE_TYPE
  149 + metric_configuration.metric.origin = params[:metric_configuration][:metric][:origin]
  150 + metric_configuration.metric.language = params[:metric_configuration][:metric][:language]
  151 + elsif type == MezuroPlugin::MetricConfigurationContent::COMPOUND_TYPE
  152 + metric_configuration.metric.script = params[:metric_configuration][:metric][:script]
  153 + end
172 154 end
173 155  
174 156 def generic_metric_configuration_creation(metric_configuration)
175 157 @configuration_name = params[:configuration_name]
176 158 Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name)
177 159 end
  160 +
  161 + def auxiliar_update_metric_configuration(type)
  162 + @configuration_name = params[:configuration_name]
  163 + metric_name = params[:metric_configuration][:metric][:name]
  164 + metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
  165 + metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, metric_name)
  166 + metric_configuration = assign_metric_configuration_instance(metric_configuration, type)
  167 + metric_configuration_client.save(metric_configuration, @configuration_name)
  168 + end
178 169  
179 170 def new_range_instance
180 171 range = Kalibro::Entities::Range.new
... ...
plugins/mezuro/lib/mezuro_plugin/metric_configuration_content.rb
1 1 class MezuroPlugin::MetricConfigurationContent < Article
2 2  
  3 + NATIVE_TYPE='native'
  4 + COMPOUND_TYPE='compound'
  5 +
3 6 def self.short_description
4 7 'Kalibro Configurated Metric'
5 8 end
... ...