Исправление бесконечного reconnect при переходе в несуществующую группу
This commit is contained in:
@@ -29,11 +29,11 @@ public class Group extends CreateUpdateEntity {
|
|||||||
private String groupId;
|
private String groupId;
|
||||||
|
|
||||||
@Convert(converter = StringListConverter.class)
|
@Convert(converter = StringListConverter.class)
|
||||||
@Column(name = "membersPublicKeys", nullable = false)
|
@Column(name = "membersPublicKeys", nullable = false, columnDefinition = "TEXT")
|
||||||
private List<String> membersPublicKeys = new ArrayList<>();
|
private List<String> membersPublicKeys = new ArrayList<>();
|
||||||
|
|
||||||
@Convert(converter = StringListConverter.class)
|
@Convert(converter = StringListConverter.class)
|
||||||
@Column(name = "bannedPublicKeys", nullable = false)
|
@Column(name = "bannedPublicKeys", nullable = false, columnDefinition = "TEXT")
|
||||||
private List<String> bannedPublicKeys = new ArrayList<>();
|
private List<String> bannedPublicKeys = new ArrayList<>();
|
||||||
|
|
||||||
public Long getId() {
|
public Long getId() {
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package im.rosetta.service.dispatch;
|
|||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import im.rosetta.Failures;
|
|
||||||
import im.rosetta.client.ClientManager;
|
import im.rosetta.client.ClientManager;
|
||||||
import im.rosetta.client.tags.ECIAuthentificate;
|
import im.rosetta.client.tags.ECIAuthentificate;
|
||||||
import im.rosetta.database.repository.BufferRepository;
|
import im.rosetta.database.repository.BufferRepository;
|
||||||
@@ -44,9 +43,8 @@ public class MessageDispatcher {
|
|||||||
if(groupMembersPublicKeys.isEmpty()){
|
if(groupMembersPublicKeys.isEmpty()){
|
||||||
/**
|
/**
|
||||||
* Если группа не найдена или в группе нет участников, то в такую отправить
|
* Если группа не найдена или в группе нет участников, то в такую отправить
|
||||||
* сообщение нельзя
|
* сообщение нельзя, ничего не делаем
|
||||||
*/
|
*/
|
||||||
client.disconnect(Failures.DATA_MISSMATCH);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(!groupMembersPublicKeys.contains(eciAuthentificate.getPublicKey())){
|
if(!groupMembersPublicKeys.contains(eciAuthentificate.getPublicKey())){
|
||||||
@@ -54,7 +52,6 @@ public class MessageDispatcher {
|
|||||||
* Если отправитель не является участником группы, то он не может отправлять
|
* Если отправитель не является участником группы, то он не может отправлять
|
||||||
* сообщения в эту группу
|
* сообщения в эту группу
|
||||||
*/
|
*/
|
||||||
client.disconnect(Failures.USER_NOT_IN_GROUP);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user