improved logging for messages waiting for join
This commit is contained in:
parent
af74c3604c
commit
abe01f18f2
|
@ -66,8 +66,8 @@ dependencies {
|
||||||
implementation 'org.conscrypt:conscrypt-android:2.1.0'
|
implementation 'org.conscrypt:conscrypt-android:2.1.0'
|
||||||
implementation 'me.drakeet.support:toastcompat:1.1.0'
|
implementation 'me.drakeet.support:toastcompat:1.1.0'
|
||||||
implementation "com.leinardi.android:speed-dial:2.0.1"
|
implementation "com.leinardi.android:speed-dial:2.0.1"
|
||||||
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
|
implementation 'com.squareup.retrofit2:retrofit:2.6.1'
|
||||||
implementation 'com.squareup.retrofit2:converter-gson:2.6.0'
|
implementation 'com.squareup.retrofit2:converter-gson:2.6.1'
|
||||||
implementation 'com.google.guava:guava:27.1-android'
|
implementation 'com.google.guava:guava:27.1-android'
|
||||||
quicksyImplementation 'io.michaelrocks:libphonenumber-android:8.10.1'
|
quicksyImplementation 'io.michaelrocks:libphonenumber-android:8.10.1'
|
||||||
}
|
}
|
||||||
|
|
|
@ -1484,7 +1484,7 @@ public class AxolotlService implements OnAdvancedStreamFeaturesLoaded {
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
final XmppAxolotlSession session = iterator.next();
|
final XmppAxolotlSession session = iterator.next();
|
||||||
if (trustedOrPreviouslyResponded(session)) {
|
if (trustedOrPreviouslyResponded(session)) {
|
||||||
completeSession(iterator.next());
|
completeSession(session);
|
||||||
}
|
}
|
||||||
iterator.remove();
|
iterator.remove();
|
||||||
}
|
}
|
||||||
|
|
|
@ -803,9 +803,8 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece
|
||||||
mXmppConnectionService.markRead(conversation);
|
mXmppConnectionService.markRead(conversation);
|
||||||
}
|
}
|
||||||
} else if (!counterpart.isBareJid() && trueJid != null) {
|
} else if (!counterpart.isBareJid() && trueJid != null) {
|
||||||
ReadByMarker readByMarker = ReadByMarker.from(counterpart, trueJid);
|
final ReadByMarker readByMarker = ReadByMarker.from(counterpart, trueJid);
|
||||||
if (message.addReadByMarker(readByMarker)) {
|
if (message.addReadByMarker(readByMarker)) {
|
||||||
Log.d(Config.LOGTAG, account.getJid().asBareJid() + ": added read by (" + readByMarker.getRealJid() + ") to message '" + message.getBody() + "'");
|
|
||||||
mXmppConnectionService.updateMessage(message, false);
|
mXmppConnectionService.updateMessage(message, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1383,10 +1383,8 @@ public class XmppConnectionService extends Service {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
final boolean inProgressJoin;
|
final boolean inProgressJoin = isJoinInProgress(conversation);
|
||||||
synchronized (account.inProgressConferenceJoins) {
|
|
||||||
inProgressJoin = conversation.getMode() == Conversational.MODE_MULTI && (account.inProgressConferenceJoins.contains(conversation) || account.pendingConferenceJoins.contains(conversation));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (account.isOnlineAndConnected() && !inProgressJoin) {
|
if (account.isOnlineAndConnected() && !inProgressJoin) {
|
||||||
switch (message.getEncryption()) {
|
switch (message.getEncryption()) {
|
||||||
|
@ -1516,6 +1514,23 @@ public class XmppConnectionService extends Service {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean isJoinInProgress(final Conversation conversation) {
|
||||||
|
final Account account = conversation.getAccount();
|
||||||
|
synchronized (account.inProgressConferenceJoins) {
|
||||||
|
if (conversation.getMode() == Conversational.MODE_MULTI) {
|
||||||
|
final boolean inProgress = account.inProgressConferenceJoins.contains(conversation);
|
||||||
|
final boolean pending = account.pendingConferenceJoins.contains(conversation);
|
||||||
|
final boolean inProgressJoin = inProgress || pending;
|
||||||
|
if (inProgressJoin) {
|
||||||
|
Log.d(Config.LOGTAG,account.getJid().asBareJid()+": holding back message to group. inProgress="+inProgress+", pending="+pending);
|
||||||
|
}
|
||||||
|
return inProgressJoin;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void sendUnsentMessages(final Conversation conversation) {
|
private void sendUnsentMessages(final Conversation conversation) {
|
||||||
conversation.findWaitingMessages(message -> resendMessage(message, true));
|
conversation.findWaitingMessages(message -> resendMessage(message, true));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue