Refine IpNeighbour parsing

This commit is contained in:
Mygod
2018-10-04 16:34:40 +08:00
parent ed1e1a581e
commit e85d792218
3 changed files with 14 additions and 23 deletions

View File

@@ -57,17 +57,11 @@ fun NetworkInterface.formatAddresses() =
.joinToString("\n")
private val parseNumericAddress by lazy {
// parseNumericAddressNoThrow is in dark grey list unfortunately
InetAddress::class.java.getDeclaredMethod("parseNumericAddress", String::class.java).apply {
isAccessible = true
}
}
fun parseNumericAddress(address: String) = parseNumericAddress.invoke(null, address) as InetAddress
fun parseNumericAddressNoThrow(address: String): InetAddress? = try {
parseNumericAddress(address)
} catch (_: IllegalArgumentException) {
null
}
/**
* Wrapper for kotlin.concurrent.thread that silences uncaught exceptions.