Sha256: 10a0ce1e7863dadf7a0029ea3283e53b9da35366f50e281965fe61488d3787c6

Contents?: true

Size: 1.45 KB

Versions: 12

Compression:

Stored size: 1.45 KB

Contents

module MDQT
  class CLI

    class Defaults

      class << self

        def base_url

          ENV['MDQT_SERVICE'] || ENV['MDQ_BASE_URL'] || guess_service

        end

        def force_hash?
          false
        end

        def cli_defaults
          {
            hash: force_hash?,
            cache: true,
            refresh: false
          }
        end

        def guess_service

          locale = ENV['LANG']

          service = services.find { |s| s[:locale] == locale }
          #service ||= services.first

          if service
            url = service[:url]
            STDERR.puts "MDQT is assuming that you want to use #{url}\nPlease configure this using --service, MDQT_SERVICE or MDQ_BASE_URL\n\n"
            url
          else
            nil
          end

        end

        def lookup_service_alias(srv_alias)
          service = services.find { |s| s[:alias].to_s.downcase.to_sym == srv_alias.to_s.downcase.to_sym }
          service ? service[:url] : nil
        end

        def services
          [
            { alias: "ukamf",
              locale: "en_GB.UTF-8",
              url: "http://mdq.ukfederation.org.uk/"
            },
            { alias: "incommon",
              locale: "en_US.UTF-8",
              url: "https://mdq.incommon.org/"
            },
            { alias: "dfn",
              locale: "de_utf8",
              url: "https://mdq.aai.dfn.de/"
            },
          ]
        end

      end

    end

  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
aaf-mdqt-0.8.10 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.9 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.8 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.7 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.6 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.5 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.4 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.3 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.2 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.1 lib/mdqt/cli/defaults.rb
aaf-mdqt-0.8.0 lib/mdqt/cli/defaults.rb
mdqt-0.8.0 lib/mdqt/cli/defaults.rb