Skip to content

Commit 28cf8fd

Browse files
authored
add InterceptConfig.toString() (#171)
1 parent c8f25be commit 28cf8fd

File tree

1 file changed

+13
-2
lines changed
  • ziti/src/main/kotlin/org/openziti/api

1 file changed

+13
-2
lines changed

ziti/src/main/kotlin/org/openziti/api/types.kt

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,17 +73,28 @@ internal class ServiceUpdates(val lastChangeAt: Date)
7373

7474
private data class ClientV1Config(val hostname: String, val port: Int)
7575

76-
data class PortRange(val low: Int, val high: Int) {
76+
data class PortRange(val low: Int, val high: Int): Comparable<PortRange> {
7777
fun contains(port: Int) = (port in low..high)
78+
79+
override fun toString(): String = if (low == high) low.toString() else "$low-$high"
80+
override fun compareTo(other: PortRange): Int {
81+
val ord = low.compareTo(other.low)
82+
return if (ord == 0) high.compareTo(other.high) else ord
83+
}
7884
}
7985

86+
fun <T> Array<T>.display() = joinToString(prefix = "[", postfix = "]")
8087
data class InterceptConfig(
8188
val protocols: Array<InterceptProtocol>,
8289
val addresses: Array<String>,
8390
val portRanges: Array<PortRange>,
8491
val dialOptions: Map<String,Any> = emptyMap(),
8592
val sourceIp: String? = null
86-
)
93+
) {
94+
override fun toString(): String {
95+
return """${protocols.display()}:${addresses.display()}:${portRanges.display()}"""
96+
}
97+
}
8798

8899
class Service internal constructor(
89100
internal val id: String,

0 commit comments

Comments
 (0)