using expression bodies for boolean checks
- moves first expression line onto the declaration line
This commit is contained in:
parent
11ef4a7fec
commit
eda1d9142c
|
@ -25,32 +25,26 @@ import java.io.IOException
|
||||||
import java.net.UnknownHostException
|
import java.net.UnknownHostException
|
||||||
import javax.net.ssl.HttpsURLConnection
|
import javax.net.ssl.HttpsURLConnection
|
||||||
|
|
||||||
fun Throwable.is401() =
|
fun Throwable.is401() = this is Failure.ServerError &&
|
||||||
this is Failure.ServerError &&
|
|
||||||
httpCode == HttpsURLConnection.HTTP_UNAUTHORIZED && /* 401 */
|
httpCode == HttpsURLConnection.HTTP_UNAUTHORIZED && /* 401 */
|
||||||
error.code == MatrixError.M_UNAUTHORIZED
|
error.code == MatrixError.M_UNAUTHORIZED
|
||||||
|
|
||||||
fun Throwable.is404() =
|
fun Throwable.is404() = this is Failure.ServerError &&
|
||||||
this is Failure.ServerError &&
|
|
||||||
httpCode == HttpsURLConnection.HTTP_NOT_FOUND && /* 404 */
|
httpCode == HttpsURLConnection.HTTP_NOT_FOUND && /* 404 */
|
||||||
error.code == MatrixError.M_NOT_FOUND
|
error.code == MatrixError.M_NOT_FOUND
|
||||||
|
|
||||||
fun Throwable.isTokenError() =
|
fun Throwable.isTokenError() = this is Failure.ServerError &&
|
||||||
this is Failure.ServerError &&
|
|
||||||
(error.code == MatrixError.M_UNKNOWN_TOKEN ||
|
(error.code == MatrixError.M_UNKNOWN_TOKEN ||
|
||||||
error.code == MatrixError.M_MISSING_TOKEN ||
|
error.code == MatrixError.M_MISSING_TOKEN ||
|
||||||
error.code == MatrixError.ORG_MATRIX_EXPIRED_ACCOUNT)
|
error.code == MatrixError.ORG_MATRIX_EXPIRED_ACCOUNT)
|
||||||
|
|
||||||
fun Throwable.isLimitExceededError() =
|
fun Throwable.isLimitExceededError() = this is Failure.ServerError &&
|
||||||
this is Failure.ServerError &&
|
|
||||||
httpCode == 429 &&
|
httpCode == 429 &&
|
||||||
error.code == MatrixError.M_LIMIT_EXCEEDED
|
error.code == MatrixError.M_LIMIT_EXCEEDED
|
||||||
|
|
||||||
fun Throwable.shouldBeRetried(): Boolean {
|
fun Throwable.shouldBeRetried() = this is Failure.NetworkConnection ||
|
||||||
return this is Failure.NetworkConnection ||
|
|
||||||
this is IOException ||
|
this is IOException ||
|
||||||
this.isLimitExceededError()
|
isLimitExceededError()
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the retry delay in case of rate limit exceeded error, adding 100 ms, of defaultValue otherwise
|
* Get the retry delay in case of rate limit exceeded error, adding 100 ms, of defaultValue otherwise
|
||||||
|
@ -64,46 +58,33 @@ fun Throwable.getRetryDelay(defaultValue: Long): Long {
|
||||||
?: defaultValue
|
?: defaultValue
|
||||||
}
|
}
|
||||||
|
|
||||||
fun Throwable.isUsernameInUse(): Boolean {
|
fun Throwable.isUsernameInUse() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError && error.code == MatrixError.M_USER_IN_USE
|
error.code == MatrixError.M_USER_IN_USE
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isInvalidUsername(): Boolean {
|
fun Throwable.isInvalidUsername() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError &&
|
|
||||||
error.code == MatrixError.M_INVALID_USERNAME
|
error.code == MatrixError.M_INVALID_USERNAME
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isInvalidPassword(): Boolean {
|
fun Throwable.isInvalidPassword() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError &&
|
|
||||||
error.code == MatrixError.M_FORBIDDEN &&
|
error.code == MatrixError.M_FORBIDDEN &&
|
||||||
error.message == "Invalid password"
|
error.message == "Invalid password"
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isRegistrationDisabled(): Boolean {
|
fun Throwable.isRegistrationDisabled() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError && error.code == MatrixError.M_FORBIDDEN &&
|
error.code == MatrixError.M_FORBIDDEN &&
|
||||||
httpCode == HttpsURLConnection.HTTP_FORBIDDEN
|
httpCode == HttpsURLConnection.HTTP_FORBIDDEN
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isWeakPassword(): Boolean {
|
fun Throwable.isWeakPassword() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError && error.code == MatrixError.M_WEAK_PASSWORD
|
error.code == MatrixError.M_WEAK_PASSWORD
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isLoginEmailUnknown(): Boolean {
|
fun Throwable.isLoginEmailUnknown() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError &&
|
|
||||||
error.code == MatrixError.M_FORBIDDEN &&
|
error.code == MatrixError.M_FORBIDDEN &&
|
||||||
error.message.isEmpty()
|
error.message.isEmpty()
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isInvalidUIAAuth(): Boolean {
|
fun Throwable.isInvalidUIAAuth() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError &&
|
|
||||||
error.code == MatrixError.M_FORBIDDEN &&
|
error.code == MatrixError.M_FORBIDDEN &&
|
||||||
error.flows != null
|
error.flows != null
|
||||||
}
|
|
||||||
|
|
||||||
fun Throwable.isHomeserverUnavailable(): Boolean {
|
fun Throwable.isHomeserverUnavailable() = this is Failure.NetworkConnection &&
|
||||||
return this is Failure.NetworkConnection &&
|
|
||||||
this.ioException is UnknownHostException
|
this.ioException is UnknownHostException
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Try to convert to a RegistrationFlowResponse. Return null in the cases it's not possible
|
* Try to convert to a RegistrationFlowResponse. Return null in the cases it's not possible
|
||||||
|
@ -135,13 +116,11 @@ fun Throwable.toRegistrationFlowResponse(): RegistrationFlowResponse? {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun Throwable.isRegistrationAvailabilityError(): Boolean {
|
fun Throwable.isRegistrationAvailabilityError() = this is Failure.ServerError &&
|
||||||
return this is Failure.ServerError &&
|
|
||||||
httpCode == HttpsURLConnection.HTTP_BAD_REQUEST && /* 400 */
|
httpCode == HttpsURLConnection.HTTP_BAD_REQUEST && /* 400 */
|
||||||
(error.code == MatrixError.M_USER_IN_USE ||
|
(error.code == MatrixError.M_USER_IN_USE ||
|
||||||
error.code == MatrixError.M_INVALID_USERNAME ||
|
error.code == MatrixError.M_INVALID_USERNAME ||
|
||||||
error.code == MatrixError.M_EXCLUSIVE)
|
error.code == MatrixError.M_EXCLUSIVE)
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Try to convert to a ScanFailure. Return null in the cases it's not possible
|
* Try to convert to a ScanFailure. Return null in the cases it's not possible
|
||||||
|
|
Loading…
Reference in New Issue