Commit 9075c17a66b606beeccbc0e4d68e43d365e25380
Committed by
Paulo Meireles
1 parent
307f8268
Exists in
master
and in
28 other branches
[Mezuro] Refactored update_metric_configuration and update_compound_metric_configuration
Showing
2 changed files
with
26 additions
and
32 deletions
Show diff stats
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 |