LoggerPrintStream class
Пакет: com.hypixel.hytale.logger.util
Файл: com/hypixel/hytale/logger/util/LoggerPrintStream.java
extends: PrintStream
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
HytaleLogger |
logger |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
ArrayIndexOutOfBoundsExceptionthrow new ArrayIndexOutOfBoundsException(var3) |
|
|
for for(int var4 = 0; var4 < var3; var4++) |
public |
Level |
getLevelLevel getLevel() |
public |
HytaleLogger |
getLoggerHytaleLogger getLogger() |
|
|
if if(this.last == 13 && var1 == 10) |
|
|
if if(var1 != 10 && var1 != 13) |
|
|
if if(var3 < 0) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.logger.util;
class="kw">import com.hypixel.hytale.logger.HytaleLogger;
class="kw">import java.io.ByteArrayOutputStream;
class="kw">import java.io.PrintStream;
class="kw">import java.nio.charset.StandardCharsets;
class="kw">import java.util.logging.Level;
class="kw">public class LoggerPrintStream class="kw">extends PrintStream {
class="kw">private class="kw">final HytaleLogger logger;
class="kw">private class="kw">final Level level;
class="kw">private class="kw">final ByteArrayOutputStream bufferedOutput;
class="kw">private int last;
class="kw">public LoggerPrintStream(HytaleLogger var1, Level var2) {
super(new ByteArrayOutputStream());
this.logger = var1;
this.level = var2;
this.bufferedOutput = (ByteArrayOutputStream)super.out;
this.last = -1;
}
@Override
class="kw">public void write(int var1) {
if (this.last == 13 && var1 == 10) {
this.last = -1;
} else {
if (var1 != 10 && var1 != 13) {
super.write(var1);
} else {
try {
this.logger.at(this.level).log("%s", this.bufferedOutput.toString(StandardCharsets.UTF_8));
} class="kw">finally {
this.bufferedOutput.reset();
}
}
this.last = var1;
}
}
@Override
class="kw">public void write(byte[] var1, int var2, int var3) {
if (var3 < 0) {
throw new ArrayIndexOutOfBoundsException(var3);
}
for (int var4 = 0; var4 < var3; var4++) {
this.write(var1[var2 + var4]);
}
}
class="kw">public HytaleLogger getLogger() {
class="kw">return this.logger;
}
class="kw">public Level getLevel() {
class="kw">return this.level;
}
}