package net.minecraft.server; import com.mojang.logging.LogUtils; import java.io.OutputStream; import java.io.PrintStream; import java.nio.charset.StandardCharsets; import org.jspecify.annotations.Nullable; import org.slf4j.Logger; public class LoggedPrintStream extends PrintStream { private static final Logger LOGGER = LogUtils.getLogger(); protected final String name; public LoggedPrintStream(final String name, final OutputStream out) { super(out, false, StandardCharsets.UTF_8); this.name = name; } public void println(@Nullable final String string) { this.logLine(string); } public void println(@Nullable final Object object) { this.logLine(String.valueOf(object)); } protected void logLine(@Nullable final String out) { LOGGER.info("[{}]: {}", this.name, out); } }