Sha256: 9fd4855b90e717bb16c1724aa19f46058fe019c517e372133fa207ff6de6e31f

Contents?: true

Size: 568 Bytes

Versions: 5

Compression:

Stored size: 568 Bytes

Contents

# frozen_string_literal: true

module Acme::Client::Resources::Challenges
  require 'acme/client/resources/challenges/base'
  require 'acme/client/resources/challenges/http01'
  require 'acme/client/resources/challenges/dns01'

  CHALLENGE_TYPES = {
    'http-01' => Acme::Client::Resources::Challenges::HTTP01,
    'dns-01' => Acme::Client::Resources::Challenges::DNS01
  }

  def self.new(client, type:, **arguments)
    klass = CHALLENGE_TYPES[type]
    if klass
      klass.new(client, **arguments)
    else
      { type: type }.merge(arguments)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
acme-client-2.0.4 lib/acme/client/resources/challenges.rb
acme-client-2.0.3 lib/acme/client/resources/challenges.rb
acme-client-2.0.2 lib/acme/client/resources/challenges.rb
acme-client-2.0.1 lib/acme/client/resources/challenges.rb
acme-client-2.0.0 lib/acme/client/resources/challenges.rb