Skip to content

Commit

Permalink
Network: cleanups/renames, remove unused methods
Browse files Browse the repository at this point in the history
  • Loading branch information
tal5 committed Jun 5, 2023
1 parent cc8789b commit c413f88
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 46 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,39 +11,30 @@

public class DataDeserializer {

private final ByteBuf buf;
private final ByteBuf input;

public DataDeserializer(ByteBuf buf) {
this.buf = buf;
public DataDeserializer(ByteBuf input) {
this.input = input;
}

public boolean readBoolean() {
return buf.readBoolean();
return input.readBoolean();
}

public int readInt() {
return buf.readInt();
return input.readInt();
}

public byte[] readByteArray() {
byte[] bytes = new byte[readInt()];
buf.readBytes(bytes);
input.readBytes(bytes);
return bytes;
}

public String readString() {
return new String(readByteArray(), StandardCharsets.UTF_8);
}

public List<Integer> readIntList() {
int size = readInt();
List<Integer> intList = new ArrayList<>(size);
for (int i = 0; i < size; i++) {
intList.add(readInt());
}
return intList;
}

public List<String> readStringList() {
int size = readInt();
List<String> stringList = new ArrayList<>(size);
Expand All @@ -64,17 +55,6 @@ public Map<String, String> readStringMap() {
return stringMap;
}

public Map<String, List<String>> readStringListMap() {
int size = readInt();
Map<String, List<String>> stringListMap = new HashMap<>(size);
for (int i = 0; i < size; i++) {
String key = readString();
List<String> value = readStringList();
stringListMap.put(key, value);
}
return stringListMap;
}

public <T> T readNullable(Supplier<T> readMethod) {
return readBoolean() ? readMethod.get() : null;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,60 +2,51 @@

import net.fabricmc.fabric.api.networking.v1.PacketByteBufs;
import net.minecraft.network.PacketByteBuf;
import org.jetbrains.annotations.NotNull;

import java.nio.charset.StandardCharsets;
import java.util.Collection;
import java.util.Map;
import java.util.function.BiConsumer;

public class DataSerializer {

public final PacketByteBuf byteBuf;
public final PacketByteBuf output;

public DataSerializer() {
byteBuf = PacketByteBufs.create();
output = PacketByteBufs.create();
}

public DataSerializer writeInt(int i) {
byteBuf.writeInt(i);
output.writeInt(i);
return this;
}

public DataSerializer writeBoolean(boolean bool) {
byteBuf.writeBoolean(bool);
output.writeBoolean(bool);
return this;
}

public DataSerializer writeBytes(@NotNull byte[] bytes) {
byteBuf.writeBytes(bytes);
public DataSerializer writeBytes(byte[] bytes) {
output.writeBytes(bytes);
return this;
}

public DataSerializer writeByteArray(@NotNull byte[] bytes) {
public DataSerializer writeByteArray(byte[] bytes) {
return writeInt(bytes.length).writeBytes(bytes);
}

public DataSerializer writeString(@NotNull String s) {
public DataSerializer writeString(String s) {
return writeByteArray(s.getBytes(StandardCharsets.UTF_8));
}

public DataSerializer writeStringList(@NotNull Collection<String> strings) {
public DataSerializer writeStringList(Collection<String> strings) {
writeInt(strings.size());
for (String s : strings) {
writeString(s);
}
return this;
}

public DataSerializer writeStringListMap(@NotNull Map<String, Collection<String>> map) {
writeInt(map.size());
for (Map.Entry<String, Collection<String>> entry : map.entrySet()) {
writeString(entry.getKey());
writeStringList(entry.getValue());
}
return this;
}

public DataSerializer writeStringMap(Map<String, String> stringMap) {
writeInt(stringMap.size());
for (Map.Entry<String, String> entry : stringMap.entrySet()) {
Expand All @@ -64,4 +55,15 @@ public DataSerializer writeStringMap(Map<String, String> stringMap) {
}
return this;
}

public <T> DataSerializer writeNullable(T object, BiConsumer<DataSerializer, T> writeMethod) {
if (object != null) {
writeBoolean(true);
writeMethod.accept(this, object);
}
else {
writeBoolean(false);
}
return this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public static void send(Identifier channel, DataSerializer serializer) {
// return;
// }
debugNetwork("Sending message on channel " + channel);
ClientPlayNetworking.send(channel, serializer != null ? serializer.byteBuf : PacketByteBufs.empty());
ClientPlayNetworking.send(channel, serializer != null ? serializer.output : PacketByteBufs.empty());
}

public static void debugNetwork(String debug) {
Expand Down

0 comments on commit c413f88

Please sign in to comment.