package org.openrs2.compress.cli.pack200 import com.github.ajalt.clikt.core.CliktCommand import com.github.ajalt.clikt.parameters.options.option import com.github.ajalt.clikt.parameters.types.defaultStdin import com.github.ajalt.clikt.parameters.types.defaultStdout import com.github.ajalt.clikt.parameters.types.inputStream import com.github.ajalt.clikt.parameters.types.outputStream import org.openrs2.compress.gzip.Gzip import org.openrs2.util.io.DeterministicJarOutputStream import java.util.jar.Pack200 public class Unpack200Command : CliktCommand(name = "unpack200") { private val input by option().inputStream().defaultStdin() private val output by option().outputStream().defaultStdout() override fun run() { Gzip.createHeaderlessInputStream(input).use { gzipInput -> DeterministicJarOutputStream(output).use { jarOutput -> Pack200.newUnpacker().unpack(gzipInput, jarOutput) } } } }