Fixes around default SSL cert setting

This commit is contained in:
Aidan Follestad 2019-01-26 14:27:55 -08:00
commit 33388bd5c2
4 changed files with 12 additions and 3 deletions

View file

@ -153,7 +153,7 @@ class AddSiteViewModel(
validationArgs = getValidationArgs(), validationArgs = getValidationArgs(),
networkTimeout = timeout, networkTimeout = timeout,
disabled = false, disabled = false,
certificate = certificateUri.value.toString() certificate = certificateUri.value?.toString()
) )
val newLastResult = ValidationResult( val newLastResult = ValidationResult(

View file

@ -231,7 +231,7 @@ class ViewSiteViewModel(
validationArgs = getValidationArgs(), validationArgs = getValidationArgs(),
networkTimeout = timeout, networkTimeout = timeout,
disabled = false, disabled = false,
certificate = certificateUri.value.toString() certificate = certificateUri.value?.toString()
) )
val retryPolicyTimes = retryPolicyTimes.value ?: 0 val retryPolicyTimes = retryPolicyTimes.value ?: 0

View file

@ -18,3 +18,10 @@ package com.afollestad.nocknock.utilities.ext
import android.net.Uri import android.net.Uri
fun String.toUri() = Uri.parse(this)!! fun String.toUri() = Uri.parse(this)!!
fun String?.isNotNullOrEmpty(): Boolean {
if (this == null || this == "null") {
return false
}
return !isNullOrEmpty()
}

View file

@ -26,6 +26,7 @@ import com.afollestad.nocknock.data.model.Status.OK
import com.afollestad.nocknock.engine.R import com.afollestad.nocknock.engine.R
import com.afollestad.nocknock.engine.ssl.SslManager import com.afollestad.nocknock.engine.ssl.SslManager
import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_SITE_ID import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_SITE_ID
import com.afollestad.nocknock.utilities.ext.isNotNullOrEmpty
import com.afollestad.nocknock.utilities.providers.BundleProvider import com.afollestad.nocknock.utilities.providers.BundleProvider
import com.afollestad.nocknock.utilities.providers.JobInfoProvider import com.afollestad.nocknock.utilities.providers.JobInfoProvider
import com.afollestad.nocknock.utilities.providers.StringProvider import com.afollestad.nocknock.utilities.providers.StringProvider
@ -168,7 +169,7 @@ class RealValidationExecutor(
return try { return try {
val clientWithTimeout = clientTimeoutChanger(okHttpClient, siteSettings.networkTimeout) val clientWithTimeout = clientTimeoutChanger(okHttpClient, siteSettings.networkTimeout)
val client = if (!siteSettings.certificate.isNullOrEmpty()) { val client = if (siteSettings.certificate.isNotNullOrEmpty()) {
sslManager.clientForCertificate( sslManager.clientForCertificate(
certUri = siteSettings.certificate!!, certUri = siteSettings.certificate!!,
siteUri = site.url, siteUri = site.url,
@ -205,6 +206,7 @@ class RealValidationExecutor(
) )
) )
} catch (ex: Exception) { } catch (ex: Exception) {
ex.printStackTrace()
log("performValidation(${site.id}) = Error: ${ex.message}") log("performValidation(${site.id}) = Error: ${ex.message}")
CheckResult(model = site.withStatus(status = ERROR, reason = ex.message)) CheckResult(model = site.withStatus(status = ERROR, reason = ex.message))
} }