mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 18:59:06 +01:00
add encoder to ReturnShardPayload
This commit is contained in:
@@ -1,15 +1,34 @@
|
||||
package org.briarproject.briar.api.socialbackup;
|
||||
|
||||
import org.briarproject.bramble.api.FormatException;
|
||||
import org.briarproject.bramble.api.data.BdfList;
|
||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
||||
|
||||
import javax.annotation.concurrent.Immutable;
|
||||
|
||||
import static org.briarproject.bramble.util.ValidationUtils.checkSize;
|
||||
|
||||
@Immutable
|
||||
@NotNullByDefault
|
||||
public class ReturnShardPayload {
|
||||
private final Shard shard;
|
||||
private final BackupPayload backupPayload;
|
||||
|
||||
// TODO this does not belong here
|
||||
private static Shard parseShardMessage(BdfList body) throws FormatException {
|
||||
// Message type, secret ID, shard
|
||||
byte[] secretId = body.getRaw(1);
|
||||
byte[] shard = body.getRaw(2);
|
||||
return new Shard(secretId, shard);
|
||||
}
|
||||
|
||||
public static ReturnShardPayload fromList(BdfList body) throws FormatException {
|
||||
checkSize(body, 2);
|
||||
Shard shard = parseShardMessage(body.getList(0));
|
||||
BackupPayload backupPayload = new BackupPayload(body.getRaw(1));
|
||||
return new ReturnShardPayload(shard, backupPayload);
|
||||
}
|
||||
|
||||
public ReturnShardPayload(Shard shard, BackupPayload backupPayload) {
|
||||
this.shard = shard;
|
||||
this.backupPayload = backupPayload;
|
||||
|
||||
Reference in New Issue
Block a user