/** * Generate response message that list of (key => value) pairs * @return */ @Override public List<ChaincodeShim.ChaincodeMessage> next() { List<KvQueryResult.KV> keyValues = Arrays.asList(values).stream(). map(x -> KvQueryResult.KV.newBuilder() .setKey(x) .setValue(ByteString.copyFromUtf8(x + " Value")) .build() ).collect(toList()); ChaincodeShim.QueryResponse.Builder builder = ChaincodeShim.QueryResponse.newBuilder(); builder.setHasMore(hasNext); keyValues.stream().forEach(kv -> builder.addResults(ChaincodeShim.QueryResultBytes.newBuilder().setResultBytes(kv.toByteString()))); ByteString rangePayload = builder.build().toByteString(); List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .setPayload(rangePayload) .build()); return list; } }
/** * <pre> *event emitted by chaincode. Used only with Init or Invoke. * This event is then stored (currently) *with Block.NonHashData.TransactionResult * </pre> * * <code>optional .protos.ChaincodeEvent chaincode_event = 6;</code> */ private com.google.protobuf.SingleFieldBuilderV3< org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEvent, org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEvent.Builder, org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEventOrBuilder> getChaincodeEventFieldBuilder() { if (chaincodeEventBuilder_ == null) { chaincodeEventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEvent, org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEvent.Builder, org.hyperledger.fabric.protos.peer.ChaincodeEventPackage.ChaincodeEventOrBuilder>( getChaincodeEvent(), getParentForChildren(), isClean()); chaincodeEvent_ = null; } return chaincodeEventBuilder_; }
.setType(ChaincodeShim.ChaincodeMessage.Type.REGISTERED) .build(); .setType(ChaincodeShim.ChaincodeMessage.Type.READY) .build(); .setType(ChaincodeShim.ChaincodeMessage.Type.PUT_STATE) .setChannelId("mychannel") .setTxid("q") .setPayload(ByteString.copyFromUtf8("")) .build(); .setType(ChaincodeShim.ChaincodeMessage.Type.KEEPALIVE) .setChannelId("mychannel") .setTxid("q") .setPayload(ByteString.copyFromUtf8("")) .build(); handler.onChaincodeMessage(keepAliveMessage); Assert.assertEquals("Not correct handler state", Handler.CCState.READY, handler.getState()); .setType(ChaincodeShim.ChaincodeMessage.Type.ERROR) .setChannelId("mychannel") .setTxid("q") .setPayload(ByteString.copyFromUtf8("")) .build();
public Builder mergeFrom(org.hyperledger.fabric.protos.peer.ChaincodeShim.ChaincodeMessage other) { if (other == org.hyperledger.fabric.protos.peer.ChaincodeShim.ChaincodeMessage.getDefaultInstance()) return this; if (other.type_ != 0) { setTypeValue(other.getTypeValue()); } if (other.hasTimestamp()) { mergeTimestamp(other.getTimestamp()); } if (other.getPayload() != com.google.protobuf.ByteString.EMPTY) { setPayload(other.getPayload()); } if (!other.getTxid().isEmpty()) { txid_ = other.txid_; onChanged(); } if (other.hasProposal()) { mergeProposal(other.getProposal()); } if (other.hasChaincodeEvent()) { mergeChaincodeEvent(other.getChaincodeEvent()); } if (!other.getChannelId().isEmpty()) { channelId_ = other.channelId_; onChanged(); } onChanged(); return this; }
/** * * @return Chaincode response packed as payload inside COMPLETE message packed as payload inside RESPONSE message */ @Override public List<ChaincodeShim.ChaincodeMessage> next() { ByteString chaincodeResponse = ProposalResponsePackage.Response.newBuilder() .setStatus(Chaincode.Response.Status.SUCCESS.getCode()) .setMessage("OK") .build().toByteString(); ByteString completePayload = ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.COMPLETED) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .setPayload(chaincodeResponse) .build().toByteString(); List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .setPayload(completePayload) .build()); return list; } }
@Override public List<ChaincodeShim.ChaincodeMessage> next() { List<KvQueryResult.KeyModification> keyModifications = Arrays.asList(values).stream(). map(x -> KvQueryResult.KeyModification.newBuilder() .setTxId(x) .setValue(ByteString.copyFromUtf8(x + " Value")) .build() ).collect(toList()); ChaincodeShim.QueryResponse.Builder builder = ChaincodeShim.QueryResponse.newBuilder(); builder.setHasMore(hasNext); keyModifications.stream().forEach(kv -> builder.addResults(ChaincodeShim.QueryResultBytes.newBuilder().setResultBytes(kv.toByteString()))); ByteString historyPayload = builder.build().toByteString(); List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .setPayload(historyPayload) .build()); return list; } }
/** * Generate chaincode messages * * @param type * @param channelId * @param txId * @param payload * @param event * @return */ public static ChaincodeShim.ChaincodeMessage newEventMessage(final ChaincodeShim.ChaincodeMessage.Type type, final String channelId, final String txId, final ByteString payload, final ChaincodeEventPackage.ChaincodeEvent event) { ChaincodeShim.ChaincodeMessage.Builder builder = ChaincodeShim.ChaincodeMessage.newBuilder() .setType(type) .setChannelId(channelId) .setTxid(txId) .setPayload(payload); if (event != null) { builder.setChaincodeEvent(event); } return builder.build(); } }
/** * * @return RESPONSE message with empty payload */ @Override public List<ChaincodeShim.ChaincodeMessage> next() { List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .build()); return list; } }
public org.hyperledger.fabric.protos.peer.ChaincodeShim.ChaincodeMessage build() { org.hyperledger.fabric.protos.peer.ChaincodeShim.ChaincodeMessage result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; }
@java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /**
@Override public List<ChaincodeShim.ChaincodeMessage> next() { List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.REGISTERED) .build()); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.READY) .build()); return list; } }
@Override public List<ChaincodeShim.ChaincodeMessage> next() { ByteString getPayload = ByteString.copyFromUtf8(val); List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .setPayload(getPayload) .build()); return list; } }
private static ChaincodeMessage newRegisterChaincodeMessage(final ChaincodeID chaincodeId) { return ChaincodeMessage.newBuilder() .setType(REGISTER) .setPayload(chaincodeId.toByteString()) .build(); }
@Override public List<ChaincodeShim.ChaincodeMessage> next() { List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .build()); return list; } }
private static ChaincodeMessage newEventMessage(final Type type, final String channelId, final String txId, final ByteString payload, final ChaincodeEvent event) { ChaincodeMessage.Builder builder = ChaincodeMessage.newBuilder() .setType(type) .setChannelId(channelId) .setTxid(txId) .setPayload(payload); if (event != null) { builder.setChaincodeEvent(event); } return builder.build(); }
@Override public List<ChaincodeShim.ChaincodeMessage> next() { List<ChaincodeShim.ChaincodeMessage> list = new ArrayList<>(); list.add(ChaincodeShim.ChaincodeMessage.newBuilder() .setType(ChaincodeShim.ChaincodeMessage.Type.RESPONSE) .setChannelId(orgMsg.getChannelId()) .setTxid(orgMsg.getTxid()) .build()); return list; } }