account.getAciIdentityKeyPair(),
account.getPniIdentityKeyPair(),
account.getProfileKey(),
+ account.getOrCreatePinMasterKey(),
verificationCode);
} catch (InvalidKeyException e) {
throw new InvalidDeviceLinkException("Invalid device link", e);
import java.util.Collection;
import java.util.List;
+import java.util.Map;
import java.util.Set;
import java.util.UUID;
import java.util.function.Supplier;
}
@Override
- public Set<SignalProtocolAddress> getAllAddressesWithActiveSessions(final List<String> addressNames) {
+ public Map<SignalProtocolAddress, SessionRecord> getAllAddressesWithActiveSessions(final List<String> addressNames) {
return sessionStore.getAllAddressesWithActiveSessions(addressNames);
}
import java.util.List;
import java.util.Map;
import java.util.Objects;
-import java.util.Set;
import java.util.stream.Collectors;
public class SessionStore implements SignalServiceSessionStore {
}
@Override
- public Set<SignalProtocolAddress> getAllAddressesWithActiveSessions(final List<String> addressNames) {
+ public Map<SignalProtocolAddress, SessionRecord> getAllAddressesWithActiveSessions(final List<String> addressNames) {
final var serviceIdsCommaSeparated = addressNames.stream()
.map(address -> "'" + address.replaceAll("'", "''") + "'")
.collect(Collectors.joining(","));
return Utils.executeQueryForStream(statement,
res -> new Pair<>(getKeyFromResultSet(res), getSessionRecordFromResultSet(res)))
.filter(pair -> isActive(pair.second()))
- .map(Pair::first)
- .map(key -> new SignalProtocolAddress(key.address(), key.deviceId()))
- .collect(Collectors.toSet());
+ .collect(Collectors.toMap(pair -> new SignalProtocolAddress(pair.first().address(),
+ pair.first().deviceId()), Pair::second));
}
} catch (SQLException e) {
throw new RuntimeException("Failed read from session store", e);
library("logback", "ch.qos.logback", "logback-classic").version("1.4.14")
- library("signalservice", "com.github.turasa", "signal-service-java").version("2.15.3_unofficial_88")
+ library("signalservice", "com.github.turasa", "signal-service-java").version("2.15.3_unofficial_89")
library("sqlite", "org.xerial", "sqlite-jdbc").version("3.44.1.0")
library("hikari", "com.zaxxer", "HikariCP").version("5.1.0")
library("junit.jupiter", "org.junit.jupiter", "junit-jupiter").version("5.10.1")