Синхронизация сообщений, чтения в группах, синхронизация ключей групп

This commit is contained in:
RoyceDa
2026-02-24 18:15:22 +02:00
parent 773659c2ba
commit 0e240d1eeb
7 changed files with 101 additions and 59 deletions

View File

@@ -14,11 +14,20 @@ public class Packet20GroupJoin extends Packet {
private String groupId;
private NetworkGroupStatus status;
/**
* Строка группы, которая содержит информацию о группе, такую как ее название, описание и ключ
* Строка зашифрована обратимым шифрованием, где ключом выступает - реальный приватный ключ
* входящего в группу клиента. Нужно это для будущей синхронзации, так как клиенту на его другом
* устройстве нужно получить ключ группы и ее информацию. Сервер расшифровать эту строку не может. Эту
* строку может расшифровать только клиент, так как она зашифрована его приватным ключом
*/
private String groupString;
@Override
public void read(Stream stream) {
this.groupId = stream.readString();
this.status = NetworkGroupStatus.fromCode(stream.readInt8());
this.groupString = stream.readString();
}
@Override
@@ -27,6 +36,7 @@ public class Packet20GroupJoin extends Packet {
stream.writeInt16(this.packetId);
stream.writeString(this.groupId);
stream.writeInt8(this.status.getCode());
stream.writeString(this.groupString);
return stream;
}
@@ -62,4 +72,20 @@ public class Packet20GroupJoin extends Packet {
this.status = status;
}
/**
* Получить строку группы, которая содержит информацию о группе, такую как ее название, описание и ключ
* @return строка группы
*/
public String getGroupString() {
return groupString;
}
/**
* Установить строку группы, которая содержит информацию о группе, такую как ее название, описание и ключ
* @param groupString строка группы
*/
public void setGroupString(String groupString) {
this.groupString = groupString;
}
}