mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-11 18:29:05 +01:00
Restrict getMessage() method to small messages.
This commit is contained in:
@@ -35,24 +35,24 @@ public interface ClientHelper {
|
|||||||
|
|
||||||
Message createMessageForStoringMetadata(GroupId g);
|
Message createMessageForStoringMetadata(GroupId g);
|
||||||
|
|
||||||
Message getMessage(MessageId m) throws DbException;
|
Message getSmallMessage(MessageId m) throws DbException;
|
||||||
|
|
||||||
Message getMessage(Transaction txn, MessageId m) throws DbException;
|
Message getSmallMessage(Transaction txn, MessageId m) throws DbException;
|
||||||
|
|
||||||
BdfList getMessageAsList(MessageId m) throws DbException, FormatException;
|
BdfList getSmallMessageAsList(MessageId m)
|
||||||
|
throws DbException, FormatException;
|
||||||
|
|
||||||
BdfList getMessageAsList(Transaction txn, MessageId m) throws DbException,
|
BdfList getSmallMessageAsList(Transaction txn, MessageId m)
|
||||||
FormatException;
|
throws DbException, FormatException;
|
||||||
|
|
||||||
BdfDictionary getGroupMetadataAsDictionary(GroupId g) throws DbException,
|
BdfDictionary getGroupMetadataAsDictionary(GroupId g)
|
||||||
FormatException;
|
throws DbException, FormatException;
|
||||||
|
|
||||||
BdfDictionary getGroupMetadataAsDictionary(Transaction txn, GroupId g)
|
BdfDictionary getGroupMetadataAsDictionary(Transaction txn, GroupId g)
|
||||||
throws DbException, FormatException;
|
throws DbException, FormatException;
|
||||||
|
|
||||||
BdfDictionary getMessageMetadataAsDictionary(MessageId m)
|
BdfDictionary getMessageMetadataAsDictionary(MessageId m)
|
||||||
throws DbException,
|
throws DbException, FormatException;
|
||||||
FormatException;
|
|
||||||
|
|
||||||
BdfDictionary getMessageMetadataAsDictionary(Transaction txn, MessageId m)
|
BdfDictionary getMessageMetadataAsDictionary(Transaction txn, MessageId m)
|
||||||
throws DbException, FormatException;
|
throws DbException, FormatException;
|
||||||
@@ -67,8 +67,8 @@ public interface ClientHelper {
|
|||||||
BdfDictionary query) throws DbException, FormatException;
|
BdfDictionary query) throws DbException, FormatException;
|
||||||
|
|
||||||
Map<MessageId, BdfDictionary> getMessageMetadataAsDictionary(
|
Map<MessageId, BdfDictionary> getMessageMetadataAsDictionary(
|
||||||
Transaction txn, GroupId g, BdfDictionary query) throws DbException,
|
Transaction txn, GroupId g, BdfDictionary query)
|
||||||
FormatException;
|
throws DbException, FormatException;
|
||||||
|
|
||||||
void mergeGroupMetadata(GroupId g, BdfDictionary metadata)
|
void mergeGroupMetadata(GroupId g, BdfDictionary metadata)
|
||||||
throws DbException, FormatException;
|
throws DbException, FormatException;
|
||||||
|
|||||||
@@ -276,13 +276,14 @@ public interface DatabaseComponent extends TransactionManager {
|
|||||||
Collection<Identity> getIdentities(Transaction txn) throws DbException;
|
Collection<Identity> getIdentities(Transaction txn) throws DbException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the message with the given ID.
|
* Returns the single-block message with the given ID.
|
||||||
* <p/>
|
* <p/>
|
||||||
* Read-only.
|
* Read-only.
|
||||||
*
|
*
|
||||||
* @throws MessageDeletedException if the message has been deleted
|
* @throws MessageDeletedException if the message has been deleted
|
||||||
|
* @throws MessageTooLargeException if the message has more than one block
|
||||||
*/
|
*/
|
||||||
Message getMessage(Transaction txn, MessageId m) throws DbException;
|
Message getSmallMessage(Transaction txn, MessageId m) throws DbException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the IDs of all delivered messages in the given group.
|
* Returns the IDs of all delivered messages in the given group.
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
package org.briarproject.bramble.api.db;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Thrown when a multi-block message is requested from the database via a
|
||||||
|
* method that is only suitable for requesting single-block messages.
|
||||||
|
*/
|
||||||
|
public class MessageTooLargeException extends DbException {
|
||||||
|
}
|
||||||
@@ -116,25 +116,27 @@ class ClientHelperImpl implements ClientHelper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Message getMessage(MessageId m) throws DbException {
|
public Message getSmallMessage(MessageId m) throws DbException {
|
||||||
return db.transactionWithResult(true, txn -> getMessage(txn, m));
|
return db.transactionWithResult(true, txn -> getSmallMessage(txn, m));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Message getMessage(Transaction txn, MessageId m) throws DbException {
|
public Message getSmallMessage(Transaction txn, MessageId m)
|
||||||
return db.getMessage(txn, m);
|
throws DbException {
|
||||||
|
return db.getSmallMessage(txn, m);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BdfList getMessageAsList(MessageId m) throws DbException,
|
public BdfList getSmallMessageAsList(MessageId m)
|
||||||
FormatException {
|
|
||||||
return db.transactionWithResult(true, txn -> getMessageAsList(txn, m));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public BdfList getMessageAsList(Transaction txn, MessageId m)
|
|
||||||
throws DbException, FormatException {
|
throws DbException, FormatException {
|
||||||
return toList(db.getMessage(txn, m).getBody());
|
return db.transactionWithResult(true, txn ->
|
||||||
|
getSmallMessageAsList(txn, m));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BdfList getSmallMessageAsList(Transaction txn, MessageId m)
|
||||||
|
throws DbException, FormatException {
|
||||||
|
return toList(db.getSmallMessage(txn, m).getBody());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import org.briarproject.bramble.api.db.DataTooOldException;
|
|||||||
import org.briarproject.bramble.api.db.DatabaseComponent;
|
import org.briarproject.bramble.api.db.DatabaseComponent;
|
||||||
import org.briarproject.bramble.api.db.DbException;
|
import org.briarproject.bramble.api.db.DbException;
|
||||||
import org.briarproject.bramble.api.db.MessageDeletedException;
|
import org.briarproject.bramble.api.db.MessageDeletedException;
|
||||||
|
import org.briarproject.bramble.api.db.MessageTooLargeException;
|
||||||
import org.briarproject.bramble.api.db.Metadata;
|
import org.briarproject.bramble.api.db.Metadata;
|
||||||
import org.briarproject.bramble.api.db.MigrationListener;
|
import org.briarproject.bramble.api.db.MigrationListener;
|
||||||
import org.briarproject.bramble.api.identity.Author;
|
import org.briarproject.bramble.api.identity.Author;
|
||||||
@@ -332,13 +333,14 @@ interface Database<T> {
|
|||||||
Collection<Identity> getIdentities(T txn) throws DbException;
|
Collection<Identity> getIdentities(T txn) throws DbException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the message with the given ID.
|
* Returns the single-block message with the given ID.
|
||||||
* <p/>
|
* <p/>
|
||||||
* Read-only.
|
* Read-only.
|
||||||
*
|
*
|
||||||
* @throws MessageDeletedException if the message has been deleted
|
* @throws MessageDeletedException if the message has been deleted
|
||||||
|
* @throws MessageTooLargeException if the message has more than one block
|
||||||
*/
|
*/
|
||||||
Message getMessage(T txn, MessageId m) throws DbException;
|
Message getSmallMessage(T txn, MessageId m) throws DbException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the IDs and states of all dependencies of the given message.
|
* Returns the IDs and states of all dependencies of the given message.
|
||||||
|
|||||||
@@ -418,7 +418,7 @@ class DatabaseComponentImpl<T> implements DatabaseComponent {
|
|||||||
else ids = db.getMessagesToSend(txn, c, maxLength, maxLatency);
|
else ids = db.getMessagesToSend(txn, c, maxLength, maxLatency);
|
||||||
List<Message> messages = new ArrayList<>(ids.size());
|
List<Message> messages = new ArrayList<>(ids.size());
|
||||||
for (MessageId m : ids) {
|
for (MessageId m : ids) {
|
||||||
messages.add(db.getMessage(txn, m));
|
messages.add(db.getSmallMessage(txn, m));
|
||||||
db.updateExpiryTimeAndEta(txn, c, m, maxLatency);
|
db.updateExpiryTimeAndEta(txn, c, m, maxLatency);
|
||||||
}
|
}
|
||||||
if (ids.isEmpty()) return null;
|
if (ids.isEmpty()) return null;
|
||||||
@@ -472,7 +472,7 @@ class DatabaseComponentImpl<T> implements DatabaseComponent {
|
|||||||
db.getRequestedMessagesToSend(txn, c, maxLength, maxLatency);
|
db.getRequestedMessagesToSend(txn, c, maxLength, maxLatency);
|
||||||
List<Message> messages = new ArrayList<>(ids.size());
|
List<Message> messages = new ArrayList<>(ids.size());
|
||||||
for (MessageId m : ids) {
|
for (MessageId m : ids) {
|
||||||
messages.add(db.getMessage(txn, m));
|
messages.add(db.getSmallMessage(txn, m));
|
||||||
db.updateExpiryTimeAndEta(txn, c, m, maxLatency);
|
db.updateExpiryTimeAndEta(txn, c, m, maxLatency);
|
||||||
}
|
}
|
||||||
if (ids.isEmpty()) return null;
|
if (ids.isEmpty()) return null;
|
||||||
@@ -564,12 +564,12 @@ class DatabaseComponentImpl<T> implements DatabaseComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Message getMessage(Transaction transaction, MessageId m)
|
public Message getSmallMessage(Transaction transaction, MessageId m)
|
||||||
throws DbException {
|
throws DbException {
|
||||||
T txn = unbox(transaction);
|
T txn = unbox(transaction);
|
||||||
if (!db.containsMessage(txn, m))
|
if (!db.containsMessage(txn, m))
|
||||||
throw new NoSuchMessageException();
|
throw new NoSuchMessageException();
|
||||||
return db.getMessage(txn, m);
|
return db.getSmallMessage(txn, m);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ import org.briarproject.bramble.api.db.DataTooOldException;
|
|||||||
import org.briarproject.bramble.api.db.DbClosedException;
|
import org.briarproject.bramble.api.db.DbClosedException;
|
||||||
import org.briarproject.bramble.api.db.DbException;
|
import org.briarproject.bramble.api.db.DbException;
|
||||||
import org.briarproject.bramble.api.db.MessageDeletedException;
|
import org.briarproject.bramble.api.db.MessageDeletedException;
|
||||||
|
import org.briarproject.bramble.api.db.MessageTooLargeException;
|
||||||
import org.briarproject.bramble.api.db.Metadata;
|
import org.briarproject.bramble.api.db.Metadata;
|
||||||
import org.briarproject.bramble.api.db.MigrationListener;
|
import org.briarproject.bramble.api.db.MigrationListener;
|
||||||
import org.briarproject.bramble.api.identity.Author;
|
import org.briarproject.bramble.api.identity.Author;
|
||||||
@@ -1716,11 +1717,13 @@ abstract class JdbcDatabase implements Database<Connection> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Message getMessage(Connection txn, MessageId m) throws DbException {
|
public Message getSmallMessage(Connection txn, MessageId m)
|
||||||
|
throws DbException {
|
||||||
PreparedStatement ps = null;
|
PreparedStatement ps = null;
|
||||||
ResultSet rs = null;
|
ResultSet rs = null;
|
||||||
try {
|
try {
|
||||||
String sql = "SELECT groupId, timestamp, deleted FROM messages"
|
String sql = "SELECT groupId, timestamp, deleted, blockCount"
|
||||||
|
+ " FROM messages"
|
||||||
+ " WHERE messageId = ?";
|
+ " WHERE messageId = ?";
|
||||||
ps = txn.prepareStatement(sql);
|
ps = txn.prepareStatement(sql);
|
||||||
ps.setBytes(1, m.getBytes());
|
ps.setBytes(1, m.getBytes());
|
||||||
@@ -1729,10 +1732,12 @@ abstract class JdbcDatabase implements Database<Connection> {
|
|||||||
GroupId g = new GroupId(rs.getBytes(1));
|
GroupId g = new GroupId(rs.getBytes(1));
|
||||||
long timestamp = rs.getLong(2);
|
long timestamp = rs.getLong(2);
|
||||||
boolean deleted = rs.getBoolean(3);
|
boolean deleted = rs.getBoolean(3);
|
||||||
|
int blockCount = rs.getInt(4);
|
||||||
if (rs.next()) throw new DbStateException();
|
if (rs.next()) throw new DbStateException();
|
||||||
rs.close();
|
rs.close();
|
||||||
ps.close();
|
ps.close();
|
||||||
if (deleted) throw new MessageDeletedException();
|
if (deleted) throw new MessageDeletedException();
|
||||||
|
if (blockCount > 1) throw new MessageTooLargeException();
|
||||||
sql = "SELECT data FROM blocks"
|
sql = "SELECT data FROM blocks"
|
||||||
+ " WHERE messageId = ? AND blockNumber = 0";
|
+ " WHERE messageId = ? AND blockNumber = 0";
|
||||||
ps = txn.prepareStatement(sql);
|
ps = txn.prepareStatement(sql);
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager,
|
|||||||
Map<TransportId, LatestUpdate> latest = findLatestLocal(txn);
|
Map<TransportId, LatestUpdate> latest = findLatestLocal(txn);
|
||||||
// Retrieve and parse the latest local properties
|
// Retrieve and parse the latest local properties
|
||||||
for (Entry<TransportId, LatestUpdate> e : latest.entrySet()) {
|
for (Entry<TransportId, LatestUpdate> e : latest.entrySet()) {
|
||||||
BdfList message = clientHelper.getMessageAsList(txn,
|
BdfList message = clientHelper.getSmallMessageAsList(txn,
|
||||||
e.getValue().messageId);
|
e.getValue().messageId);
|
||||||
local.put(e.getKey(), parseProperties(message));
|
local.put(e.getKey(), parseProperties(message));
|
||||||
}
|
}
|
||||||
@@ -220,7 +220,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager,
|
|||||||
true);
|
true);
|
||||||
if (latest != null) {
|
if (latest != null) {
|
||||||
// Retrieve and parse the latest local properties
|
// Retrieve and parse the latest local properties
|
||||||
BdfList message = clientHelper.getMessageAsList(txn,
|
BdfList message = clientHelper.getSmallMessageAsList(txn,
|
||||||
latest.messageId);
|
latest.messageId);
|
||||||
p = parseProperties(message);
|
p = parseProperties(message);
|
||||||
}
|
}
|
||||||
@@ -250,7 +250,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager,
|
|||||||
if (latest == null) {
|
if (latest == null) {
|
||||||
local = new TransportProperties();
|
local = new TransportProperties();
|
||||||
} else {
|
} else {
|
||||||
BdfList message = clientHelper.getMessageAsList(txn,
|
BdfList message = clientHelper.getSmallMessageAsList(txn,
|
||||||
latest.messageId);
|
latest.messageId);
|
||||||
local = parseProperties(message);
|
local = parseProperties(message);
|
||||||
}
|
}
|
||||||
@@ -271,8 +271,8 @@ class TransportPropertyManagerImpl implements TransportPropertyManager,
|
|||||||
remote = new TransportProperties();
|
remote = new TransportProperties();
|
||||||
} else {
|
} else {
|
||||||
// Retrieve and parse the latest remote properties
|
// Retrieve and parse the latest remote properties
|
||||||
BdfList message =
|
BdfList message = clientHelper.getSmallMessageAsList(txn,
|
||||||
clientHelper.getMessageAsList(txn, latest.messageId);
|
latest.messageId);
|
||||||
remote = parseProperties(message);
|
remote = parseProperties(message);
|
||||||
}
|
}
|
||||||
// Merge in any discovered properties
|
// Merge in any discovered properties
|
||||||
@@ -315,7 +315,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager,
|
|||||||
}
|
}
|
||||||
changed = true;
|
changed = true;
|
||||||
} else {
|
} else {
|
||||||
BdfList message = clientHelper.getMessageAsList(txn,
|
BdfList message = clientHelper.getSmallMessageAsList(txn,
|
||||||
latest.messageId);
|
latest.messageId);
|
||||||
TransportProperties old = parseProperties(message);
|
TransportProperties old = parseProperties(message);
|
||||||
merged = new TransportProperties(old);
|
merged = new TransportProperties(old);
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ class ValidationManagerImpl implements ValidationManager, Service,
|
|||||||
Pair<Message, Group> mg = db.transactionWithResult(true, txn -> {
|
Pair<Message, Group> mg = db.transactionWithResult(true, txn -> {
|
||||||
MessageId id = unvalidated.poll();
|
MessageId id = unvalidated.poll();
|
||||||
if (id == null) throw new AssertionError();
|
if (id == null) throw new AssertionError();
|
||||||
Message m = db.getMessage(txn, id);
|
Message m = db.getSmallMessage(txn, id);
|
||||||
Group g = db.getGroup(txn, m.getGroupId());
|
Group g = db.getGroup(txn, m.getGroupId());
|
||||||
return new Pair<>(m, g);
|
return new Pair<>(m, g);
|
||||||
});
|
});
|
||||||
@@ -179,7 +179,7 @@ class ValidationManagerImpl implements ValidationManager, Service,
|
|||||||
invalidateMessage(txn, id);
|
invalidateMessage(txn, id);
|
||||||
addDependentsToInvalidate(txn, id, invalidate);
|
addDependentsToInvalidate(txn, id, invalidate);
|
||||||
} else if (allDelivered) {
|
} else if (allDelivered) {
|
||||||
Message m = db.getMessage(txn, id);
|
Message m = db.getSmallMessage(txn, id);
|
||||||
Group g = db.getGroup(txn, m.getGroupId());
|
Group g = db.getGroup(txn, m.getGroupId());
|
||||||
ClientId c = g.getClientId();
|
ClientId c = g.getClientId();
|
||||||
int majorVersion = g.getMajorVersion();
|
int majorVersion = g.getMajorVersion();
|
||||||
|
|||||||
@@ -298,7 +298,8 @@ class ClientVersioningManagerImpl implements ClientVersioningManager,
|
|||||||
private List<ClientVersion> loadClientVersions(Transaction txn,
|
private List<ClientVersion> loadClientVersions(Transaction txn,
|
||||||
MessageId m) throws DbException {
|
MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
return parseClientVersions(clientHelper.getMessageAsList(txn, m));
|
return parseClientVersions(
|
||||||
|
clientHelper.getSmallMessageAsList(txn, m));
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
throw new DbException(e);
|
throw new DbException(e);
|
||||||
}
|
}
|
||||||
@@ -391,7 +392,7 @@ class ClientVersioningManagerImpl implements ClientVersioningManager,
|
|||||||
|
|
||||||
private Update loadUpdate(Transaction txn, MessageId m) throws DbException {
|
private Update loadUpdate(Transaction txn, MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
return parseUpdate(clientHelper.getMessageAsList(txn, m));
|
return parseUpdate(clientHelper.getSmallMessageAsList(txn, m));
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
throw new DbException(e);
|
throw new DbException(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -122,11 +122,11 @@ public class ClientHelperImplTest extends BrambleTestCase {
|
|||||||
expectToList(true);
|
expectToList(true);
|
||||||
context.checking(new DbExpectations() {{
|
context.checking(new DbExpectations() {{
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
||||||
oneOf(db).getMessage(txn, messageId);
|
oneOf(db).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
clientHelper.getMessageAsList(messageId);
|
clientHelper.getSmallMessageAsList(messageId);
|
||||||
context.assertIsSatisfied();
|
context.assertIsSatisfied();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -624,7 +624,7 @@ public class DatabaseComponentImplTest extends BrambleMockTestCase {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
db.transaction(false, transaction ->
|
db.transaction(false, transaction ->
|
||||||
db.getMessage(transaction, messageId));
|
db.getSmallMessage(transaction, messageId));
|
||||||
fail();
|
fail();
|
||||||
} catch (NoSuchMessageException expected) {
|
} catch (NoSuchMessageException expected) {
|
||||||
// Expected
|
// Expected
|
||||||
@@ -868,11 +868,11 @@ public class DatabaseComponentImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(database).getSmallMessagesToSend(txn, contactId,
|
oneOf(database).getSmallMessagesToSend(txn, contactId,
|
||||||
MAX_MESSAGE_LENGTH * 2, maxLatency);
|
MAX_MESSAGE_LENGTH * 2, maxLatency);
|
||||||
will(returnValue(ids));
|
will(returnValue(ids));
|
||||||
oneOf(database).getMessage(txn, messageId);
|
oneOf(database).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId,
|
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId,
|
||||||
maxLatency);
|
maxLatency);
|
||||||
oneOf(database).getMessage(txn, messageId1);
|
oneOf(database).getSmallMessage(txn, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId1,
|
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId1,
|
||||||
maxLatency);
|
maxLatency);
|
||||||
@@ -953,11 +953,11 @@ public class DatabaseComponentImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(database).getRequestedMessagesToSend(txn, contactId,
|
oneOf(database).getRequestedMessagesToSend(txn, contactId,
|
||||||
MAX_MESSAGE_LENGTH * 2, maxLatency);
|
MAX_MESSAGE_LENGTH * 2, maxLatency);
|
||||||
will(returnValue(ids));
|
will(returnValue(ids));
|
||||||
oneOf(database).getMessage(txn, messageId);
|
oneOf(database).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId,
|
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId,
|
||||||
maxLatency);
|
maxLatency);
|
||||||
oneOf(database).getMessage(txn, messageId1);
|
oneOf(database).getSmallMessage(txn, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId1,
|
oneOf(database).updateExpiryTimeAndEta(txn, contactId, messageId1,
|
||||||
maxLatency);
|
maxLatency);
|
||||||
|
|||||||
@@ -507,11 +507,11 @@ public abstract class DatabasePerformanceTest extends BrambleTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetMessage() throws Exception {
|
public void testGetSmallMessage() throws Exception {
|
||||||
String name = "getMessage(T, MessageId)";
|
String name = "getSmallMessage(T, MessageId)";
|
||||||
benchmark(name, db -> {
|
benchmark(name, db -> {
|
||||||
Connection txn = db.startTransaction();
|
Connection txn = db.startTransaction();
|
||||||
db.getMessage(txn, pickRandom(messages).getId());
|
db.getSmallMessage(txn, pickRandom(messages).getId());
|
||||||
db.commitTransaction(txn);
|
db.commitTransaction(txn);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -166,7 +166,7 @@ public abstract class JdbcDatabaseTest extends BrambleTestCase {
|
|||||||
assertTrue(db.containsGroup(txn, groupId));
|
assertTrue(db.containsGroup(txn, groupId));
|
||||||
assertTrue(db.containsMessage(txn, messageId));
|
assertTrue(db.containsMessage(txn, messageId));
|
||||||
assertArrayEquals(message.getBody(),
|
assertArrayEquals(message.getBody(),
|
||||||
db.getMessage(txn, messageId).getBody());
|
db.getSmallMessage(txn, messageId).getBody());
|
||||||
|
|
||||||
// Delete the records
|
// Delete the records
|
||||||
db.removeMessage(txn, messageId);
|
db.removeMessage(txn, messageId);
|
||||||
@@ -1929,7 +1929,7 @@ public abstract class JdbcDatabaseTest extends BrambleTestCase {
|
|||||||
assertEquals(singletonList(messageId), ids);
|
assertEquals(singletonList(messageId), ids);
|
||||||
|
|
||||||
// The message should be available
|
// The message should be available
|
||||||
Message m = db.getMessage(txn, messageId);
|
Message m = db.getSmallMessage(txn, messageId);
|
||||||
assertEquals(messageId, m.getId());
|
assertEquals(messageId, m.getId());
|
||||||
assertEquals(groupId, m.getGroupId());
|
assertEquals(groupId, m.getGroupId());
|
||||||
assertEquals(message.getTimestamp(), m.getTimestamp());
|
assertEquals(message.getTimestamp(), m.getTimestamp());
|
||||||
@@ -1949,7 +1949,7 @@ public abstract class JdbcDatabaseTest extends BrambleTestCase {
|
|||||||
|
|
||||||
// Requesting the message should throw an exception
|
// Requesting the message should throw an exception
|
||||||
try {
|
try {
|
||||||
db.getMessage(txn, messageId);
|
db.getSmallMessage(txn, messageId);
|
||||||
fail();
|
fail();
|
||||||
} catch (MessageDeletedException expected) {
|
} catch (MessageDeletedException expected) {
|
||||||
// Expected
|
// Expected
|
||||||
@@ -2087,7 +2087,7 @@ public abstract class JdbcDatabaseTest extends BrambleTestCase {
|
|||||||
Connection txn = db.startTransaction();
|
Connection txn = db.startTransaction();
|
||||||
try {
|
try {
|
||||||
// Ask for a nonexistent message - an exception should be thrown
|
// Ask for a nonexistent message - an exception should be thrown
|
||||||
db.getMessage(txn, messageId);
|
db.getSmallMessage(txn, messageId);
|
||||||
fail();
|
fail();
|
||||||
} catch (DbException expected) {
|
} catch (DbException expected) {
|
||||||
// It should be possible to abort the transaction without error
|
// It should be possible to abort the transaction without error
|
||||||
|
|||||||
@@ -402,7 +402,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
localGroup.getId());
|
localGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, fooUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, fooUpdateId);
|
||||||
will(returnValue(fooUpdate));
|
will(returnValue(fooUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
fooPropertiesDict);
|
fooPropertiesDict);
|
||||||
@@ -469,7 +469,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup2.getId());
|
contactGroup2.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, fooUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, fooUpdateId);
|
||||||
will(returnValue(fooUpdate));
|
will(returnValue(fooUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
fooPropertiesDict);
|
fooPropertiesDict);
|
||||||
@@ -524,7 +524,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, updateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, updateId);
|
||||||
will(returnValue(update));
|
will(returnValue(update));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
fooPropertiesDict);
|
fooPropertiesDict);
|
||||||
@@ -562,7 +562,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
localGroup.getId());
|
localGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, updateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, updateId);
|
||||||
will(returnValue(update));
|
will(returnValue(update));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
fooPropertiesDict);
|
fooPropertiesDict);
|
||||||
@@ -693,7 +693,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
localGroup.getId());
|
localGroup.getId());
|
||||||
will(returnValue(localGroupMessageMetadata));
|
will(returnValue(localGroupMessageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localGroupUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localGroupUpdateId);
|
||||||
will(returnValue(oldUpdate));
|
will(returnValue(oldUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
oldPropertiesDict);
|
oldPropertiesDict);
|
||||||
@@ -758,7 +758,7 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
localGroup.getId());
|
localGroup.getId());
|
||||||
will(returnValue(localGroupMessageMetadata));
|
will(returnValue(localGroupMessageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localGroupUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localGroupUpdateId);
|
||||||
will(returnValue(oldUpdate));
|
will(returnValue(oldUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
oldPropertiesDict);
|
oldPropertiesDict);
|
||||||
@@ -817,12 +817,12 @@ public class TransportPropertyManagerImplTest extends BrambleMockTestCase {
|
|||||||
localGroup.getId());
|
localGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
// Retrieve and parse the latest local properties
|
// Retrieve and parse the latest local properties
|
||||||
oneOf(clientHelper).getMessageAsList(txn, fooVersion999);
|
oneOf(clientHelper).getSmallMessageAsList(txn, fooVersion999);
|
||||||
will(returnValue(fooUpdate));
|
will(returnValue(fooUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
fooPropertiesDict);
|
fooPropertiesDict);
|
||||||
will(returnValue(fooProperties));
|
will(returnValue(fooProperties));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, barVersion3);
|
oneOf(clientHelper).getSmallMessageAsList(txn, barVersion3);
|
||||||
will(returnValue(barUpdate));
|
will(returnValue(barUpdate));
|
||||||
oneOf(clientHelper).parseAndValidateTransportProperties(
|
oneOf(clientHelper).parseAndValidateTransportProperties(
|
||||||
barPropertiesDict);
|
barPropertiesDict);
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new DbExpectations() {{
|
context.checking(new DbExpectations() {{
|
||||||
// Load the first raw message and group
|
// Load the first raw message and group
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
||||||
oneOf(db).getMessage(txn, messageId);
|
oneOf(db).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
oneOf(db).getGroup(txn, groupId);
|
oneOf(db).getGroup(txn, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -118,7 +118,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
will(returnValue(emptyMap()));
|
will(returnValue(emptyMap()));
|
||||||
// Load the second raw message and group
|
// Load the second raw message and group
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn2));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn2));
|
||||||
oneOf(db).getMessage(txn2, messageId1);
|
oneOf(db).getSmallMessage(txn2, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(db).getGroup(txn2, groupId);
|
oneOf(db).getGroup(txn2, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -159,7 +159,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn, messageId);
|
oneOf(db).getMessageDependencies(txn, messageId);
|
||||||
will(returnValue(singletonMap(messageId1, DELIVERED)));
|
will(returnValue(singletonMap(messageId1, DELIVERED)));
|
||||||
// Get the message and its metadata to deliver
|
// Get the message and its metadata to deliver
|
||||||
oneOf(db).getMessage(txn, messageId);
|
oneOf(db).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
oneOf(db).getGroup(txn, groupId);
|
oneOf(db).getGroup(txn, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -179,7 +179,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn1, messageId2);
|
oneOf(db).getMessageDependencies(txn1, messageId2);
|
||||||
will(returnValue(singletonMap(messageId1, DELIVERED)));
|
will(returnValue(singletonMap(messageId1, DELIVERED)));
|
||||||
// Get the dependent and its metadata to deliver
|
// Get the dependent and its metadata to deliver
|
||||||
oneOf(db).getMessage(txn1, messageId2);
|
oneOf(db).getSmallMessage(txn1, messageId2);
|
||||||
will(returnValue(message2));
|
will(returnValue(message2));
|
||||||
oneOf(db).getGroup(txn1, groupId);
|
oneOf(db).getGroup(txn1, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -276,11 +276,11 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new DbExpectations() {{
|
context.checking(new DbExpectations() {{
|
||||||
// Load the first raw message - *gasp* it's gone!
|
// Load the first raw message - *gasp* it's gone!
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
||||||
oneOf(db).getMessage(txn, messageId);
|
oneOf(db).getSmallMessage(txn, messageId);
|
||||||
will(throwException(new NoSuchMessageException()));
|
will(throwException(new NoSuchMessageException()));
|
||||||
// Load the second raw message and group
|
// Load the second raw message and group
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn1));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn1));
|
||||||
oneOf(db).getMessage(txn1, messageId1);
|
oneOf(db).getSmallMessage(txn1, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(db).getGroup(txn1, groupId);
|
oneOf(db).getGroup(txn1, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -317,14 +317,14 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new DbExpectations() {{
|
context.checking(new DbExpectations() {{
|
||||||
// Load the first raw message
|
// Load the first raw message
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn));
|
||||||
oneOf(db).getMessage(txn, messageId);
|
oneOf(db).getSmallMessage(txn, messageId);
|
||||||
will(returnValue(message));
|
will(returnValue(message));
|
||||||
// Load the group - *gasp* it's gone!
|
// Load the group - *gasp* it's gone!
|
||||||
oneOf(db).getGroup(txn, groupId);
|
oneOf(db).getGroup(txn, groupId);
|
||||||
will(throwException(new NoSuchGroupException()));
|
will(throwException(new NoSuchGroupException()));
|
||||||
// Load the second raw message and group
|
// Load the second raw message and group
|
||||||
oneOf(db).transactionWithResult(with(true), withDbCallable(txn1));
|
oneOf(db).transactionWithResult(with(true), withDbCallable(txn1));
|
||||||
oneOf(db).getMessage(txn1, messageId1);
|
oneOf(db).getSmallMessage(txn1, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(db).getGroup(txn1, groupId);
|
oneOf(db).getGroup(txn1, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -614,7 +614,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn2, messageId1);
|
oneOf(db).getMessageDependencies(txn2, messageId1);
|
||||||
will(returnValue(singletonMap(messageId, DELIVERED)));
|
will(returnValue(singletonMap(messageId, DELIVERED)));
|
||||||
// Get message 1 and its metadata
|
// Get message 1 and its metadata
|
||||||
oneOf(db).getMessage(txn2, messageId1);
|
oneOf(db).getSmallMessage(txn2, messageId1);
|
||||||
will(returnValue(message1));
|
will(returnValue(message1));
|
||||||
oneOf(db).getGroup(txn2, groupId);
|
oneOf(db).getGroup(txn2, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -634,7 +634,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn3, messageId2);
|
oneOf(db).getMessageDependencies(txn3, messageId2);
|
||||||
will(returnValue(singletonMap(messageId, DELIVERED)));
|
will(returnValue(singletonMap(messageId, DELIVERED)));
|
||||||
// Get message 2 and its metadata
|
// Get message 2 and its metadata
|
||||||
oneOf(db).getMessage(txn3, messageId2);
|
oneOf(db).getSmallMessage(txn3, messageId2);
|
||||||
will(returnValue(message2));
|
will(returnValue(message2));
|
||||||
oneOf(db).getGroup(txn3, groupId);
|
oneOf(db).getGroup(txn3, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -654,7 +654,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn4, messageId3);
|
oneOf(db).getMessageDependencies(txn4, messageId3);
|
||||||
will(returnValue(twoDependencies));
|
will(returnValue(twoDependencies));
|
||||||
// Get message 3 and its metadata
|
// Get message 3 and its metadata
|
||||||
oneOf(db).getMessage(txn4, messageId3);
|
oneOf(db).getSmallMessage(txn4, messageId3);
|
||||||
will(returnValue(message3));
|
will(returnValue(message3));
|
||||||
oneOf(db).getGroup(txn4, groupId);
|
oneOf(db).getGroup(txn4, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
@@ -677,7 +677,7 @@ public class ValidationManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(db).getMessageDependencies(txn6, messageId4);
|
oneOf(db).getMessageDependencies(txn6, messageId4);
|
||||||
will(returnValue(singletonMap(messageId3, DELIVERED)));
|
will(returnValue(singletonMap(messageId3, DELIVERED)));
|
||||||
// Get message 4 and its metadata
|
// Get message 4 and its metadata
|
||||||
oneOf(db).getMessage(txn6, messageId4);
|
oneOf(db).getSmallMessage(txn6, messageId4);
|
||||||
will(returnValue(message4));
|
will(returnValue(message4));
|
||||||
oneOf(db).getGroup(txn6, groupId);
|
oneOf(db).getGroup(txn6, groupId);
|
||||||
will(returnValue(group));
|
will(returnValue(group));
|
||||||
|
|||||||
@@ -184,7 +184,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(singletonMap(localUpdateId, localUpdateMeta)));
|
will(returnValue(singletonMap(localUpdateId, localUpdateMeta)));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localUpdateId);
|
||||||
will(returnValue(localUpdateBody));
|
will(returnValue(localUpdateBody));
|
||||||
// Latest local update is up-to-date, no visibilities have changed
|
// Latest local update is up-to-date, no visibilities have changed
|
||||||
}});
|
}});
|
||||||
@@ -206,7 +206,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
// Load the old client versions
|
// Load the old client versions
|
||||||
oneOf(db).getMessageIds(txn, localGroup.getId());
|
oneOf(db).getMessageIds(txn, localGroup.getId());
|
||||||
will(returnValue(singletonList(localVersionsId)));
|
will(returnValue(singletonList(localVersionsId)));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localVersionsId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localVersionsId);
|
||||||
will(returnValue(localVersionsBody));
|
will(returnValue(localVersionsBody));
|
||||||
// Client versions are up-to-date
|
// Client versions are up-to-date
|
||||||
}});
|
}});
|
||||||
@@ -248,7 +248,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
// Load the old client versions
|
// Load the old client versions
|
||||||
oneOf(db).getMessageIds(txn, localGroup.getId());
|
oneOf(db).getMessageIds(txn, localGroup.getId());
|
||||||
will(returnValue(singletonList(oldLocalVersionsId)));
|
will(returnValue(singletonList(oldLocalVersionsId)));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalVersionsId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalVersionsId);
|
||||||
will(returnValue(oldLocalVersionsBody));
|
will(returnValue(oldLocalVersionsBody));
|
||||||
// Delete the old client versions
|
// Delete the old client versions
|
||||||
oneOf(db).removeMessage(txn, oldLocalVersionsId);
|
oneOf(db).removeMessage(txn, oldLocalVersionsId);
|
||||||
@@ -272,7 +272,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
will(returnValue(singletonMap(oldLocalUpdateId,
|
will(returnValue(singletonMap(oldLocalUpdateId,
|
||||||
oldLocalUpdateMeta)));
|
oldLocalUpdateMeta)));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Delete the latest local update
|
// Delete the latest local update
|
||||||
oneOf(db).deleteMessage(txn, oldLocalUpdateId);
|
oneOf(db).deleteMessage(txn, oldLocalUpdateId);
|
||||||
@@ -344,7 +344,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
// Load the old client versions
|
// Load the old client versions
|
||||||
oneOf(db).getMessageIds(txn, localGroup.getId());
|
oneOf(db).getMessageIds(txn, localGroup.getId());
|
||||||
will(returnValue(singletonList(oldLocalVersionsId)));
|
will(returnValue(singletonList(oldLocalVersionsId)));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalVersionsId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalVersionsId);
|
||||||
will(returnValue(oldLocalVersionsBody));
|
will(returnValue(oldLocalVersionsBody));
|
||||||
// Delete the old client versions
|
// Delete the old client versions
|
||||||
oneOf(db).removeMessage(txn, oldLocalVersionsId);
|
oneOf(db).removeMessage(txn, oldLocalVersionsId);
|
||||||
@@ -367,10 +367,10 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Load the latest remote update
|
// Load the latest remote update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldRemoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldRemoteUpdateId);
|
||||||
will(returnValue(oldRemoteUpdateBody));
|
will(returnValue(oldRemoteUpdateBody));
|
||||||
// Delete the latest local update
|
// Delete the latest local update
|
||||||
oneOf(db).deleteMessage(txn, oldLocalUpdateId);
|
oneOf(db).deleteMessage(txn, oldLocalUpdateId);
|
||||||
@@ -451,10 +451,10 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Load the latest remote update
|
// Load the latest remote update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldRemoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldRemoteUpdateId);
|
||||||
will(returnValue(oldRemoteUpdateBody));
|
will(returnValue(oldRemoteUpdateBody));
|
||||||
// Delete the old remote update
|
// Delete the old remote update
|
||||||
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
||||||
@@ -490,7 +490,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
will(returnValue(singletonMap(oldLocalUpdateId,
|
will(returnValue(singletonMap(oldLocalUpdateId,
|
||||||
oldLocalUpdateMeta)));
|
oldLocalUpdateMeta)));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Get client ID
|
// Get client ID
|
||||||
oneOf(clientHelper).getGroupMetadataAsDictionary(txn,
|
oneOf(clientHelper).getGroupMetadataAsDictionary(txn,
|
||||||
@@ -557,10 +557,10 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Load the latest remote update
|
// Load the latest remote update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldRemoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldRemoteUpdateId);
|
||||||
will(returnValue(oldRemoteUpdateBody));
|
will(returnValue(oldRemoteUpdateBody));
|
||||||
// Delete the old remote update
|
// Delete the old remote update
|
||||||
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
||||||
@@ -630,10 +630,10 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
// Load the latest local update
|
// Load the latest local update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldLocalUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldLocalUpdateId);
|
||||||
will(returnValue(oldLocalUpdateBody));
|
will(returnValue(oldLocalUpdateBody));
|
||||||
// Load the latest remote update
|
// Load the latest remote update
|
||||||
oneOf(clientHelper).getMessageAsList(txn, oldRemoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, oldRemoteUpdateId);
|
||||||
will(returnValue(oldRemoteUpdateBody));
|
will(returnValue(oldRemoteUpdateBody));
|
||||||
// Delete the old remote update
|
// Delete the old remote update
|
||||||
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
oneOf(db).deleteMessage(txn, oldRemoteUpdateId);
|
||||||
@@ -734,9 +734,9 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localUpdateId);
|
||||||
will(returnValue(localUpdateBody));
|
will(returnValue(localUpdateBody));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -769,9 +769,9 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localUpdateId);
|
||||||
will(returnValue(localUpdateBody));
|
will(returnValue(localUpdateBody));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -804,9 +804,9 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localUpdateId);
|
||||||
will(returnValue(localUpdateBody));
|
will(returnValue(localUpdateBody));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -839,9 +839,9 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, localUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, localUpdateId);
|
||||||
will(returnValue(localUpdateBody));
|
will(returnValue(localUpdateBody));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -901,7 +901,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -933,7 +933,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
@@ -965,7 +965,7 @@ public class ClientVersioningManagerImplTest extends BrambleMockTestCase {
|
|||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
contactGroup.getId());
|
contactGroup.getId());
|
||||||
will(returnValue(messageMetadata));
|
will(returnValue(messageMetadata));
|
||||||
oneOf(clientHelper).getMessageAsList(txn, remoteUpdateId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, remoteUpdateId);
|
||||||
will(returnValue(remoteUpdateBody));
|
will(returnValue(remoteUpdateBody));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
|
|||||||
@@ -317,7 +317,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Get body of message to be wrapped
|
// Get body of message to be wrapped
|
||||||
BdfList body = clientHelper.getMessageAsList(txn, header.getId());
|
BdfList body = clientHelper.getSmallMessageAsList(txn, header.getId());
|
||||||
long timestamp = header.getTimestamp();
|
long timestamp = header.getTimestamp();
|
||||||
Message wrappedMessage;
|
Message wrappedMessage;
|
||||||
|
|
||||||
@@ -465,7 +465,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager,
|
|||||||
@Override
|
@Override
|
||||||
public String getPostText(MessageId m) throws DbException {
|
public String getPostText(MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
return getPostText(clientHelper.getMessageAsList(m));
|
return getPostText(clientHelper.getSmallMessageAsList(m));
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
throw new DbException(e);
|
throw new DbException(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager {
|
|||||||
@Override
|
@Override
|
||||||
public String getPostText(MessageId m) throws DbException {
|
public String getPostText(MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
return getPostText(clientHelper.getMessageAsList(m));
|
return getPostText(clientHelper.getSmallMessageAsList(m));
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
throw new DbException(e);
|
throw new DbException(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -448,7 +448,7 @@ class IntroductionManagerImpl extends ConversationClientImpl
|
|||||||
MessageStatus status, SessionId sessionId,
|
MessageStatus status, SessionId sessionId,
|
||||||
Map<AuthorId, AuthorInfo> authorInfos)
|
Map<AuthorId, AuthorInfo> authorInfos)
|
||||||
throws DbException, FormatException {
|
throws DbException, FormatException {
|
||||||
Message msg = clientHelper.getMessage(txn, m);
|
Message msg = clientHelper.getSmallMessage(txn, m);
|
||||||
BdfList body = clientHelper.toList(msg);
|
BdfList body = clientHelper.toList(msg);
|
||||||
RequestMessage rm = messageParser.parseRequestMessage(msg, body);
|
RequestMessage rm = messageParser.parseRequestMessage(msg, body);
|
||||||
String text = rm.getText();
|
String text = rm.getText();
|
||||||
|
|||||||
@@ -392,7 +392,7 @@ class MessagingManagerImpl implements MessagingManager, IncomingMessageHook,
|
|||||||
@Override
|
@Override
|
||||||
public String getMessageText(MessageId m) throws DbException {
|
public String getMessageText(MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
BdfList body = clientHelper.getMessageAsList(m);
|
BdfList body = clientHelper.getSmallMessageAsList(m);
|
||||||
if (body.size() == 1) return body.getString(0); // Legacy format
|
if (body.size() == 1) return body.getString(0); // Legacy format
|
||||||
else return body.getOptionalString(1);
|
else return body.getOptionalString(1);
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
@@ -404,7 +404,7 @@ class MessagingManagerImpl implements MessagingManager, IncomingMessageHook,
|
|||||||
public Attachment getAttachment(AttachmentHeader h) throws DbException {
|
public Attachment getAttachment(AttachmentHeader h) throws DbException {
|
||||||
// TODO: Support large messages
|
// TODO: Support large messages
|
||||||
MessageId m = h.getMessageId();
|
MessageId m = h.getMessageId();
|
||||||
byte[] body = clientHelper.getMessage(m).getBody();
|
byte[] body = clientHelper.getSmallMessage(m).getBody();
|
||||||
try {
|
try {
|
||||||
BdfDictionary meta = clientHelper.getMessageMetadataAsDictionary(m);
|
BdfDictionary meta = clientHelper.getMessageMetadataAsDictionary(m);
|
||||||
Long messageType = meta.getOptionalLong(MSG_KEY_MSG_TYPE);
|
Long messageType = meta.getOptionalLong(MSG_KEY_MSG_TYPE);
|
||||||
|
|||||||
@@ -304,7 +304,7 @@ class PrivateGroupManagerImpl extends BdfIncomingMessageHook
|
|||||||
@Override
|
@Override
|
||||||
public String getMessageText(MessageId m) throws DbException {
|
public String getMessageText(MessageId m) throws DbException {
|
||||||
try {
|
try {
|
||||||
return getMessageText(clientHelper.getMessageAsList(m));
|
return getMessageText(clientHelper.getSmallMessageAsList(m));
|
||||||
} catch (FormatException e) {
|
} catch (FormatException e) {
|
||||||
throw new DbException(e);
|
throw new DbException(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class MessageParserImpl implements MessageParser {
|
|||||||
@Override
|
@Override
|
||||||
public InviteMessage getInviteMessage(Transaction txn, MessageId m)
|
public InviteMessage getInviteMessage(Transaction txn, MessageId m)
|
||||||
throws DbException, FormatException {
|
throws DbException, FormatException {
|
||||||
Message message = clientHelper.getMessage(txn, m);
|
Message message = clientHelper.getSmallMessage(txn, m);
|
||||||
BdfList body = clientHelper.toList(message);
|
BdfList body = clientHelper.toList(message);
|
||||||
return parseInviteMessage(message, body);
|
return parseInviteMessage(message, body);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ abstract class MessageParserImpl<S extends Shareable>
|
|||||||
@Override
|
@Override
|
||||||
public InviteMessage<S> getInviteMessage(Transaction txn, MessageId m)
|
public InviteMessage<S> getInviteMessage(Transaction txn, MessageId m)
|
||||||
throws DbException, FormatException {
|
throws DbException, FormatException {
|
||||||
Message message = clientHelper.getMessage(txn, m);
|
Message message = clientHelper.getSmallMessage(txn, m);
|
||||||
BdfList body = clientHelper.toList(message);
|
BdfList body = clientHelper.toList(message);
|
||||||
return parseInviteMessage(message, body);
|
return parseInviteMessage(message, body);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -498,7 +498,7 @@ public class BlogManagerImplTest extends BriarTestCase {
|
|||||||
oneOf(db).startTransaction(false);
|
oneOf(db).startTransaction(false);
|
||||||
will(returnValue(txn));
|
will(returnValue(txn));
|
||||||
// Wrap the original post for blog 2
|
// Wrap the original post for blog 2
|
||||||
oneOf(clientHelper).getMessageAsList(txn, messageId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, messageId);
|
||||||
will(returnValue(originalPostBody));
|
will(returnValue(originalPostBody));
|
||||||
oneOf(db).getGroup(txn, blog1.getId());
|
oneOf(db).getGroup(txn, blog1.getId());
|
||||||
will(returnValue(blog1.getGroup()));
|
will(returnValue(blog1.getGroup()));
|
||||||
@@ -609,7 +609,7 @@ public class BlogManagerImplTest extends BriarTestCase {
|
|||||||
oneOf(db).startTransaction(false);
|
oneOf(db).startTransaction(false);
|
||||||
will(returnValue(txn));
|
will(returnValue(txn));
|
||||||
// Wrap the original post for blog 1
|
// Wrap the original post for blog 1
|
||||||
oneOf(clientHelper).getMessageAsList(txn, rssMessageId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, rssMessageId);
|
||||||
will(returnValue(originalPostBody));
|
will(returnValue(originalPostBody));
|
||||||
oneOf(db).getGroup(txn, rssBlog.getId());
|
oneOf(db).getGroup(txn, rssBlog.getId());
|
||||||
will(returnValue(rssBlog.getGroup()));
|
will(returnValue(rssBlog.getGroup()));
|
||||||
@@ -734,7 +734,7 @@ public class BlogManagerImplTest extends BriarTestCase {
|
|||||||
oneOf(db).startTransaction(false);
|
oneOf(db).startTransaction(false);
|
||||||
will(returnValue(txn));
|
will(returnValue(txn));
|
||||||
// Rewrap the wrapped post for blog 2
|
// Rewrap the wrapped post for blog 2
|
||||||
oneOf(clientHelper).getMessageAsList(txn, wrappedPostId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, wrappedPostId);
|
||||||
will(returnValue(wrappedPostBody));
|
will(returnValue(wrappedPostBody));
|
||||||
oneOf(blogPostFactory).rewrapWrappedPost(blog2.getId(),
|
oneOf(blogPostFactory).rewrapWrappedPost(blog2.getId(),
|
||||||
wrappedPostBody);
|
wrappedPostBody);
|
||||||
@@ -745,7 +745,7 @@ public class BlogManagerImplTest extends BriarTestCase {
|
|||||||
oneOf(clientHelper).addLocalMessage(txn, rewrappedPostMsg,
|
oneOf(clientHelper).addLocalMessage(txn, rewrappedPostMsg,
|
||||||
rewrappedPostMeta, true, false);
|
rewrappedPostMeta, true, false);
|
||||||
// Wrap the original comment for blog 2
|
// Wrap the original comment for blog 2
|
||||||
oneOf(clientHelper).getMessageAsList(txn, originalCommentId);
|
oneOf(clientHelper).getSmallMessageAsList(txn, originalCommentId);
|
||||||
will(returnValue(originalCommentBody));
|
will(returnValue(originalCommentBody));
|
||||||
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
oneOf(clientHelper).getMessageMetadataAsDictionary(txn,
|
||||||
wrappedPostId);
|
wrappedPostId);
|
||||||
|
|||||||
@@ -1870,8 +1870,8 @@ public class IntroductionIntegrationTest
|
|||||||
ch.getMessageMetadataAsDictionary(g.getId(), query);
|
ch.getMessageMetadataAsDictionary(g.getId(), query);
|
||||||
assertEquals(1, map.size());
|
assertEquals(1, map.size());
|
||||||
MessageId id = map.entrySet().iterator().next().getKey();
|
MessageId id = map.entrySet().iterator().next().getKey();
|
||||||
Message m = ch.getMessage(id);
|
Message m = ch.getSmallMessage(id);
|
||||||
BdfList body = ch.getMessageAsList(id);
|
BdfList body = ch.getSmallMessageAsList(id);
|
||||||
if (type == ACCEPT) {
|
if (type == ACCEPT) {
|
||||||
return c0.getMessageParser().parseAcceptMessage(m, body);
|
return c0.getMessageParser().parseAcceptMessage(m, body);
|
||||||
} else if (type == DECLINE) {
|
} else if (type == DECLINE) {
|
||||||
|
|||||||
@@ -247,8 +247,10 @@ public class MessagingManagerIntegrationTest
|
|||||||
sendMessage(c0, c1, getRandomString(42), singletonList(h));
|
sendMessage(c0, c1, getRandomString(42), singletonList(h));
|
||||||
|
|
||||||
// attachment exists on both devices
|
// attachment exists on both devices
|
||||||
db0.transaction(true, txn -> db0.getMessage(txn, h.getMessageId()));
|
db0.transaction(true, txn ->
|
||||||
db1.transaction(true, txn -> db1.getMessage(txn, h.getMessageId()));
|
db0.getSmallMessage(txn, h.getMessageId()));
|
||||||
|
db1.transaction(true, txn ->
|
||||||
|
db1.getSmallMessage(txn, h.getMessageId()));
|
||||||
|
|
||||||
// delete message on both sides (deletes all, because returns true)
|
// delete message on both sides (deletes all, because returns true)
|
||||||
assertTrue(db0.transactionWithResult(false,
|
assertTrue(db0.transactionWithResult(false,
|
||||||
@@ -260,13 +262,15 @@ public class MessagingManagerIntegrationTest
|
|||||||
|
|
||||||
// attachment was deleted on both devices
|
// attachment was deleted on both devices
|
||||||
try {
|
try {
|
||||||
db0.transaction(true, txn -> db0.getMessage(txn, h.getMessageId()));
|
db0.transaction(true, txn ->
|
||||||
|
db0.getSmallMessage(txn, h.getMessageId()));
|
||||||
fail();
|
fail();
|
||||||
} catch (MessageDeletedException e) {
|
} catch (MessageDeletedException e) {
|
||||||
// expected
|
// expected
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
db1.transaction(true, txn -> db1.getMessage(txn, h.getMessageId()));
|
db1.transaction(true, txn ->
|
||||||
|
db1.getSmallMessage(txn, h.getMessageId()));
|
||||||
fail();
|
fail();
|
||||||
} catch (MessageDeletedException e) {
|
} catch (MessageDeletedException e) {
|
||||||
// expected
|
// expected
|
||||||
@@ -282,7 +286,7 @@ public class MessagingManagerIntegrationTest
|
|||||||
|
|
||||||
// attachment exists on both devices, state set to PENDING for receiver
|
// attachment exists on both devices, state set to PENDING for receiver
|
||||||
db1.transaction(false, txn -> {
|
db1.transaction(false, txn -> {
|
||||||
db1.getMessage(txn, h.getMessageId());
|
db1.getSmallMessage(txn, h.getMessageId());
|
||||||
db1.setMessageState(txn, h.getMessageId(), PENDING);
|
db1.setMessageState(txn, h.getMessageId(), PENDING);
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -310,13 +314,15 @@ public class MessagingManagerIntegrationTest
|
|||||||
|
|
||||||
// attachment was deleted on both devices
|
// attachment was deleted on both devices
|
||||||
try {
|
try {
|
||||||
db0.transaction(true, txn -> db0.getMessage(txn, h.getMessageId()));
|
db0.transaction(true, txn ->
|
||||||
|
db0.getSmallMessage(txn, h.getMessageId()));
|
||||||
fail();
|
fail();
|
||||||
} catch (MessageDeletedException e) {
|
} catch (MessageDeletedException e) {
|
||||||
// expected
|
// expected
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
db1.transaction(true, txn -> db1.getMessage(txn, h.getMessageId()));
|
db1.transaction(true, txn ->
|
||||||
|
db1.getSmallMessage(txn, h.getMessageId()));
|
||||||
fail();
|
fail();
|
||||||
} catch (MessageDeletedException e) {
|
} catch (MessageDeletedException e) {
|
||||||
// expected
|
// expected
|
||||||
|
|||||||
@@ -242,7 +242,7 @@ public abstract class BriarIntegrationTest<C extends BriarIntegrationTestCompone
|
|||||||
executor.execute(() -> {
|
executor.execute(() -> {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
try {
|
try {
|
||||||
BdfList body = clientHelper.getMessageAsList(id);
|
BdfList body = clientHelper.getSmallMessageAsList(id);
|
||||||
LOG.info("Contents of " + id + ":\n"
|
LOG.info("Contents of " + id + ":\n"
|
||||||
+ BdfStringUtils.toString(body));
|
+ BdfStringUtils.toString(body));
|
||||||
} catch (DbException | FormatException e) {
|
} catch (DbException | FormatException e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user