Archived
0

Move ByteArrayOutputNetStream another module

This commit is contained in:
2018-08-02 12:38:03 +03:00
parent 983e79d325
commit 1f3d103816
2 changed files with 2 additions and 4 deletions

View File

@@ -0,0 +1,71 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-06-10
*/
package mc.core.network.proto_1_12_2;
import java.io.ByteArrayOutputStream;
public class ByteArrayOutputNetStream extends NetOutputStream_p340 {
private ByteArrayOutputStream baos = new ByteArrayOutputStream();
@Override
public void writeBoolean(boolean value) {
baos.write(value ? 1 : 0);
}
@Override
public void writeByte(int value) {
baos.write(value);
}
@Override
public void writeUnsignedByte(int value) {
baos.write((byte)(value & 0xFF));
}
@Override
public void writeBytes(byte[] buffer) {
baos.write(buffer, 0, buffer.length);
}
@Override
public void writeShort(int value) {
baos.write((byte) value >>> 8);
baos.write((byte) value);
}
@Override
public void writeInt(int value) {
baos.write((byte)((int)(value >>> 24)));
baos.write((byte)((int)(value >>> 16)));
baos.write((byte)((int)(value >>> 8)));
baos.write((byte)((int)(value)));
}
@Override
public void writeLong(long value) {
baos.write((byte)((int)(value >>> 56)));
baos.write((byte)((int)(value >>> 48)));
baos.write((byte)((int)(value >>> 40)));
baos.write((byte)((int)(value >>> 32)));
baos.write((byte)((int)(value >>> 24)));
baos.write((byte)((int)(value >>> 16)));
baos.write((byte)((int)(value >>> 8)));
baos.write((byte)((int)(value)));
}
@Override
public void writeFloat(float value) {
writeInt(Float.floatToIntBits(value));
}
@Override
public void writeDouble(double value) {
writeLong(Double.doubleToLongBits(value));
}
public byte[] toByteArray() {
return baos.toByteArray();
}
}