From 549ee790d3e52bc62565ddf92e6a556e98b5195e Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Fri, 15 Jul 2022 00:53:48 +0530 Subject: all: re-do package structure yet again --- .../dev/msfjarvis/aps/util/proxy/ProxyUtils.kt | 71 ---------------------- 1 file changed, 71 deletions(-) delete mode 100644 app/src/main/java/dev/msfjarvis/aps/util/proxy/ProxyUtils.kt (limited to 'app/src/main/java/dev/msfjarvis/aps/util/proxy/ProxyUtils.kt') diff --git a/app/src/main/java/dev/msfjarvis/aps/util/proxy/ProxyUtils.kt b/app/src/main/java/dev/msfjarvis/aps/util/proxy/ProxyUtils.kt deleted file mode 100644 index d21ee24d..00000000 --- a/app/src/main/java/dev/msfjarvis/aps/util/proxy/ProxyUtils.kt +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved. - * SPDX-License-Identifier: GPL-3.0-only - */ - -package dev.msfjarvis.aps.util.proxy - -import dev.msfjarvis.aps.util.settings.GitSettings -import java.io.IOException -import java.net.Authenticator -import java.net.InetSocketAddress -import java.net.PasswordAuthentication -import java.net.Proxy -import java.net.ProxySelector -import java.net.SocketAddress -import java.net.URI -import javax.inject.Inject -import javax.inject.Singleton - -/** Utility class for [Proxy] handling. */ -@Singleton -class ProxyUtils @Inject constructor(private val gitSettings: GitSettings) { - - /** Set the default [Proxy] and [Authenticator] for the app based on user provided settings. */ - fun setDefaultProxy() { - ProxySelector.setDefault( - object : ProxySelector() { - override fun select(uri: URI?): MutableList { - val host = gitSettings.proxyHost - val port = gitSettings.proxyPort - return if (host == null || port == -1) { - mutableListOf(Proxy.NO_PROXY) - } else { - mutableListOf(Proxy(Proxy.Type.HTTP, InetSocketAddress.createUnresolved(host, port))) - } - } - - override fun connectFailed(uri: URI?, sa: SocketAddress?, ioe: IOException?) { - if (uri == null || sa == null || ioe == null) { - throw IllegalArgumentException("Arguments can't be null.") - } - } - } - ) - val user = gitSettings.proxyUsername ?: "" - val password = gitSettings.proxyPassword ?: "" - if (user.isEmpty() || password.isEmpty()) { - System.clearProperty(HTTP_PROXY_USER_PROPERTY) - System.clearProperty(HTTP_PROXY_PASSWORD_PROPERTY) - } else { - System.setProperty(HTTP_PROXY_USER_PROPERTY, user) - System.setProperty(HTTP_PROXY_PASSWORD_PROPERTY, password) - } - Authenticator.setDefault( - object : Authenticator() { - override fun getPasswordAuthentication(): PasswordAuthentication? { - return if (requestorType == RequestorType.PROXY) { - PasswordAuthentication(user, password.toCharArray()) - } else { - null - } - } - } - ) - } - - companion object { - private const val HTTP_PROXY_USER_PROPERTY = "http.proxyUser" - private const val HTTP_PROXY_PASSWORD_PROPERTY = "http.proxyPassword" - } -} -- cgit v1.2.3