Files
Grasscutter/src/main/java/emu/grasscutter/utils/objects/ServerLogEventAppender.java
T
2024-06-09 09:55:51 -03:00

26 lines
713 B
Java

package emu.grasscutter.utils.objects;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;
import ch.qos.logback.core.encoder.Encoder;
import emu.grasscutter.server.event.internal.ServerLogEvent;
import lombok.Getter;
import lombok.Setter;
import java.nio.charset.StandardCharsets;
@Setter
@Getter
public final class ServerLogEventAppender<E> extends AppenderBase<E> {
private Encoder<E> encoder;
@Override
protected void append(E event) {
byte[] byteArray = this.encoder.encode(event);
ServerLogEvent sle =
new ServerLogEvent((ILoggingEvent) event, new String(byteArray, StandardCharsets.UTF_8));
sle.call();
}
}