Sha256: 50499224260f6a042429e57c90fa61e7e4359a92038c286ce5c863c92dc86d96

Contents?: true

Size: 1.26 KB

Versions: 5

Compression:

Stored size: 1.26 KB

Contents

# Copyright (c) 2020 Contrast Security, Inc. See https://www.contrastsecurity.com/enduser-terms-0317a for more details.
# frozen_string_literal: true

module Contrast
  module Delegators
    # Used to decorate the ApplicationUpdate protobuf model so it can own some of the data massaging required for
    # AppUpdate dtm
    class ApplicationUpdate < SimpleDelegator
      def append_view_technology_descriptor_data view_technology_descriptors
        view_technology_descriptors.each do |vtd|
          vtd.technology_names.each do |tech_name|
            @delegate_sd_obj.technologies[tech_name] = true
          end
        end
      end

      # TS only allows you to report 500 routes per application
      def append_route_coverage_data route_coverage_dtms
        route_coverage_dtms.take(500).each do |route_coverage_dtm|
          @delegate_sd_obj.routes << route_coverage_dtm
        end
      end

      def append_platform_version platform_version
        @delegate_sd_obj.platform = Contrast::Api::Dtm::Platform.new if @delegate_sd_obj.platform.nil?
        @delegate_sd_obj.platform.major = platform_version.major
        @delegate_sd_obj.platform.minor = platform_version.minor
        @delegate_sd_obj.platform.build = platform_version.patch
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
contrast-agent-3.10.2 lib/contrast/delegators/application_update.rb
contrast-agent-3.10.1 lib/contrast/delegators/application_update.rb
contrast-agent-3.10.0 lib/contrast/delegators/application_update.rb
contrast-agent-3.9.1 lib/contrast/delegators/application_update.rb
contrast-agent-3.9.0 lib/contrast/delegators/application_update.rb