class Google::Auth::DefaultCredentials
def self.determine_creds_class json_key_io
def self.determine_creds_class json_key_io json_key = MultiJson.load json_key_io.read key = "type" raise "the json is missing the '#{key}' field" unless json_key.key? key type = json_key[key] case type when "service_account" [json_key, ServiceAccountCredentials] when "authorized_user" [json_key, UserRefreshCredentials] when "external_account" [json_key, ExternalAccount::Credentials] else raise "credentials type '#{type}' is not supported" end end