You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: endpoints.rb
    path of file: ./repos/aws-sdk-ruby/gems/aws-sdk-translate/lib/aws-sdk-translate/plugins
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

# WARNING ABOUT GENERATED CODE
#
# This file is generated. See the contributing guide for more information:
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
#
# WARNING ABOUT GENERATED CODE


module Aws::Translate
  module Plugins
    class Endpoints < Seahorse::Client::Plugin
      option(
        :endpoint_provider,
        doc_type: 'Aws::Translate::EndpointProvider',
        rbs_type: 'untyped',
        docstring: 'The endpoint provider used to resolve endpoints. Any '\
                   'object that responds to `#resolve_endpoint(parameters)` '\
                   'where `parameters` is a Struct similar to '\
                   '`Aws::Translate::EndpointParameters`'
      ) do |cfg|
        Aws::Translate::EndpointProvider.new
      end

      # @api private
      class Handler < Seahorse::Client::Handler
        def call(context)
          unless context[:discovered_endpoint]
  
    
        def parameters_for_operation(context)
          case context.operation_name
          when :create_parallel_data
            Aws::Translate::Endpoints::CreateParallelData.build(context)
          when :delete_parallel_data
            Aws::Translate::Endpoints::DeleteParallelData.build(context)
          when :delete_terminology
            Aws::Translate::Endpoints::DeleteTerminology.build(context)
          when :describe_text_translation_job
            Aws::Translate::Endpoints::DescribeTextTranslationJob.build(context)
          when :get_parallel_data
            Aws::Translate::Endpoints::GetParallelData.build(context)
          when :get_terminology
            Aws::Translate::Endpoints::GetTerminology.build(context)
          when :import_terminology
            Aws::Translate::Endpoints::ImportTerminology.build(context)
          when :list_languages
            Aws::Translate::Endpoints::ListLanguages.build(context)
          when :list_parallel_data
            Aws::Translate::Endpoints::ListParallelData.build(context)
          when :list_tags_for_resource
            Aws::Translate::Endpoints::ListTagsForResource.build(context)
          when :list_terminologies
            Aws::Translate::Endpoints::ListTerminologies.build(context)
          when :list_text_translation_jobs
            Aws::Translate::Endpoints::ListTextTranslationJobs.build(context)
          when :start_text_translation_job
            Aws::Translate::Endpoints::StartTextTranslationJob.build(context)
          when :stop_text_translation_job
            Aws::Translate::Endpoints::StopTextTranslationJob.build(context)
          when :tag_resource
            Aws::Translate::Endpoints::TagResource.build(context)
          when :translate_document
            Aws::Translate::Endpoints::TranslateDocument.build(context)
          when :translate_text
            Aws::Translate::Endpoints::TranslateText.build(context)
          when :untag_resource
            Aws::Translate::Endpoints::UntagResource.build(context)
          when :update_parallel_data
            Aws::Translate::Endpoints::UpdateParallelData.build(context)
          end