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,34 +43,22 @@ class MezuroPluginMyprofileController < ProfileController
43 end 43 end
44 44
45 def create_metric_configuration 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 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" 47 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
49 end 48 end
50 49
51 def create_compound_metric_configuration 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 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" 52 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
55 end 53 end
56 54
57 def update_metric_configuration 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 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" 57 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
65 end 58 end
66 59
67 def update_compound_metric_configuration 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 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" 62 redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
75 end 63 end
76 64
@@ -140,41 +128,44 @@ class MezuroPluginMyprofileController < ProfileController @@ -140,41 +128,44 @@ class MezuroPluginMyprofileController < ProfileController
140 def new_metric_configuration_instance 128 def new_metric_configuration_instance
141 metric_configuration = Kalibro::Entities::MetricConfiguration.new 129 metric_configuration = Kalibro::Entities::MetricConfiguration.new
142 metric_configuration.metric = Kalibro::Entities::NativeMetric.new 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 end 132 end
145 133
146 def new_compound_metric_configuration_instance 134 def new_compound_metric_configuration_instance
147 metric_configuration = Kalibro::Entities::MetricConfiguration.new 135 metric_configuration = Kalibro::Entities::MetricConfiguration.new
148 metric_configuration.metric = Kalibro::Entities::CompoundMetric.new 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 end 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 metric_configuration.metric.name = params[:metric_configuration][:metric][:name] 141 metric_configuration.metric.name = params[:metric_configuration][:metric][:name]
167 metric_configuration.metric.description = params[:metric_configuration][:metric][:description] 142 metric_configuration.metric.description = params[:metric_configuration][:metric][:description]
168 metric_configuration.metric.scope = params[:metric_configuration][:metric][:scope] 143 metric_configuration.metric.scope = params[:metric_configuration][:metric][:scope]
169 metric_configuration.code = params[:metric_configuration][:code] 144 metric_configuration.code = params[:metric_configuration][:code]
170 metric_configuration.weight = params[:metric_configuration][:weight] 145 metric_configuration.weight = params[:metric_configuration][:weight]
171 metric_configuration.aggregation_form = params[:metric_configuration][:aggregation_form] 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 end 154 end
173 155
174 def generic_metric_configuration_creation(metric_configuration) 156 def generic_metric_configuration_creation(metric_configuration)
175 @configuration_name = params[:configuration_name] 157 @configuration_name = params[:configuration_name]
176 Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) 158 Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name)
177 end 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 def new_range_instance 170 def new_range_instance
180 range = Kalibro::Entities::Range.new 171 range = Kalibro::Entities::Range.new
plugins/mezuro/lib/mezuro_plugin/metric_configuration_content.rb
1 class MezuroPlugin::MetricConfigurationContent < Article 1 class MezuroPlugin::MetricConfigurationContent < Article
2 2
  3 + NATIVE_TYPE='native'
  4 + COMPOUND_TYPE='compound'
  5 +
3 def self.short_description 6 def self.short_description
4 'Kalibro Configurated Metric' 7 'Kalibro Configurated Metric'
5 end 8 end