diff --git a/app/controllers/base_metric_configurations_controller.rb b/app/controllers/base_metric_configurations_controller.rb index 91b0457..30bf0fa 100644 --- a/app/controllers/base_metric_configurations_controller.rb +++ b/app/controllers/base_metric_configurations_controller.rb @@ -124,7 +124,7 @@ class BaseMetricConfigurationsController < ApplicationController metric = collector.find_metric_by_name(params[:metric_name]) end - if !metric.nil? && metric.type == self.class::METRIC_TYPE + if !metric.nil? && metric.type == metric_type @metric_configuration.metric = metric return end @@ -144,4 +144,11 @@ class BaseMetricConfigurationsController < ApplicationController end end end + + # Notice: If you add some logic to this method, remove the :nocov: below + # :nocov: + def metric_type + raise NotImplementedError + end + # :nocov: end diff --git a/app/controllers/compound_metric_configurations_controller.rb b/app/controllers/compound_metric_configurations_controller.rb index 6fd2869..28b6bcc 100644 --- a/app/controllers/compound_metric_configurations_controller.rb +++ b/app/controllers/compound_metric_configurations_controller.rb @@ -1,12 +1,10 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsController - METRIC_TYPE = 'CompoundMetricSnapshot' - before_action :set_metric_configurations, only: [:new, :edit] protected def set_metric! - @metric_configuration.metric.type = 'CompoundMetricSnapshot' + @metric_configuration.metric.type = metric_type end def metric_configuration_params @@ -16,4 +14,8 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsControlle def set_metric_configurations @metric_configurations = MetricConfiguration.metric_configurations_of(@kalibro_configuration.id) end + + def metric_type + 'CompoundMetricSnapshot' + end end diff --git a/app/controllers/hotspot_metric_configurations_controller.rb b/app/controllers/hotspot_metric_configurations_controller.rb index 0bc3b90..9d6477f 100644 --- a/app/controllers/hotspot_metric_configurations_controller.rb +++ b/app/controllers/hotspot_metric_configurations_controller.rb @@ -1,6 +1,4 @@ class HotspotMetricConfigurationsController < BaseMetricConfigurationsController - METRIC_TYPE = 'HotspotMetricSnapshot' - skip_before_action :set_reading_group! def metric_configuration_params @@ -12,4 +10,10 @@ class HotspotMetricConfigurationsController < BaseMetricConfigurationsController def render_failure_html(format) format.html { redirect_to kalibro_configuration_path(@kalibro_configuration.id) } end + + protected + + def metric_type + 'HotspotMetricSnapshot' + end end diff --git a/app/controllers/metric_configurations_controller.rb b/app/controllers/metric_configurations_controller.rb index d80e48b..0340164 100644 --- a/app/controllers/metric_configurations_controller.rb +++ b/app/controllers/metric_configurations_controller.rb @@ -1,6 +1,4 @@ class MetricConfigurationsController < BaseMetricConfigurationsController - METRIC_TYPE = 'NativeMetricSnapshot' - before_action :set_reading_groups!, only: [:new, :edit] def new @@ -19,6 +17,10 @@ class MetricConfigurationsController < BaseMetricConfigurationsController params.require(:metric_configuration).permit(:reading_group_id, :weight, :aggregation_form) end + def metric_type + 'NativeMetricSnapshot' + end + private def set_reading_groups! -- libgit2 0.21.2