debian-mirror-gitlab/lib/gitlab/ci/config/external/mapper/base.rb
2023-04-23 21:23:45 +05:30

36 lines
803 B
Ruby

# frozen_string_literal: true
module Gitlab
module Ci
class Config
module External
class Mapper
# Base class for mapper classes
class Base
def initialize(context)
@context = context
end
def process(...)
context.logger.instrument(mapper_instrumentation_key) do
process_without_instrumentation(...)
end
end
private
attr_reader :context
def process_without_instrumentation
raise NotImplementedError
end
def mapper_instrumentation_key
"config_mapper_#{self.class.name.demodulize.downcase}".to_sym
end
end
end
end
end
end
end