Newer
Older
Twilight / src / main / kotlin / net / taehui / twilight / system / PIDClass.kt
@Taehui Taehui on 23 Jun 586 bytes v1.0-SNAPSHOT
package net.taehui.twilight.system

import net.taehui.twilight.Logger
import java.net.BindException
import java.net.InetSocketAddress
import java.nio.channels.DatagramChannel
import kotlin.system.exitProcess

object PIDClass : Logger {
    private var datagramChannel: DatagramChannel? = null

    fun doHaveIt() {
        try {
            datagramChannel = DatagramChannel.open()
            datagramChannel?.bind(InetSocketAddress("localhost", 6101))
        } catch (e: BindException) {
            logInfo("Twilight is already running")
            exitProcess(1)
        }
    }
}