# frozen_string_literal: false

# ----------------------------------------------------------------------------
#
#     ***     AUTO GENERATED CODE    ***    Type: MMv1     ***
#
# ----------------------------------------------------------------------------
#
#     This file is automatically generated by Magic Modules and manual
#     changes will be clobbered when the file is regenerated.
#
#     Please read more about how to change this file in README.md and
#     CONTRIBUTING.md located at the root of this package.
#
# ----------------------------------------------------------------------------
require 'google/vertexai/property/batchpredictionjob_unmanaged_container_model_container_spec_env'
require 'google/vertexai/property/batchpredictionjob_unmanaged_container_model_container_spec_ports'
module GoogleInSpec
  module VertexAI
    module Property
      class BatchPredictionJobUnmanagedContainerModelContainerSpec
        attr_reader :predict_route

        attr_reader :image_uri

        attr_reader :env

        attr_reader :args

        attr_reader :command

        attr_reader :ports

        attr_reader :health_route

        def initialize(args = nil, parent_identifier = nil)
          return if args.nil?
          @parent_identifier = parent_identifier
          @predict_route = args['predictRoute']
          @image_uri = args['imageUri']
          @env = GoogleInSpec::VertexAI::Property::BatchPredictionJobUnmanagedContainerModelContainerSpecEnvArray.parse(args['env'], to_s)
          @args = args['args']
          @command = args['command']
          @ports = GoogleInSpec::VertexAI::Property::BatchPredictionJobUnmanagedContainerModelContainerSpecPortsArray.parse(args['ports'], to_s)
          @health_route = args['healthRoute']
        end

        def to_s
          "#{@parent_identifier} BatchPredictionJobUnmanagedContainerModelContainerSpec"
        end
      end
    end
  end
end
