Coverage Summary for Class: BodyResponseMessage (co.rsk.net.messages)

Class Class, % Method, % Line, %
BodyResponseMessage 0% (0/1) 0% (0/7) 0% (0/18)


1 package co.rsk.net.messages; 2  3 import org.ethereum.core.BlockHeader; 4 import org.ethereum.core.Transaction; 5 import org.ethereum.util.RLP; 6  7 import java.util.List; 8  9 /** 10  * Created by ajlopez on 25/08/2017. 11  */ 12 public class BodyResponseMessage extends MessageWithId { 13  private long id; 14  private List<Transaction> transactions; 15  private List<BlockHeader> uncles; 16  17  public BodyResponseMessage(long id, List<Transaction> transactions, List<BlockHeader> uncles) { 18  this.id = id; 19  this.transactions = transactions; 20  this.uncles = uncles; 21  } 22  23  @Override 24  public long getId() { return this.id; } 25  26  public List<Transaction> getTransactions() { return this.transactions; } 27  28  public List<BlockHeader> getUncles() { return this.uncles; } 29  30  @Override 31  protected byte[] getEncodedMessageWithoutId() { 32  byte[][] rlpTransactions = new byte[this.transactions.size()][]; 33  byte[][] rlpUncles = new byte[this.uncles.size()][]; 34  35  for (int k = 0; k < this.transactions.size(); k++) { 36  rlpTransactions[k] = this.transactions.get(k).getEncoded(); 37  } 38  39  for (int k = 0; k < this.uncles.size(); k++) { 40  rlpUncles[k] = this.uncles.get(k).getFullEncoded(); 41  } 42  43  return RLP.encodeList(RLP.encodeList(rlpTransactions), RLP.encodeList(rlpUncles)); 44  } 45  46  @Override 47  public MessageType getMessageType() { return MessageType.BODY_RESPONSE_MESSAGE; } 48  49  @Override 50  public void accept(MessageVisitor v) { 51  v.apply(this); 52  } 53 }