public static void publishPublish(Pipe<MQTTClientToServerSchema> output, long fieldTime, int fieldPacketId, int fieldQOS, int fieldRetain, CharSequence fieldTopic, byte[] fieldPayloadBacking, int fieldPayloadPosition, int fieldPayloadLength) { PipeWriter.presumeWriteFragment(output, MSG_PUBLISH_3); PipeWriter.writeLong(output,MSG_PUBLISH_3_FIELD_TIME_37, fieldTime); PipeWriter.writeInt(output,MSG_PUBLISH_3_FIELD_PACKETID_20, fieldPacketId); PipeWriter.writeInt(output,MSG_PUBLISH_3_FIELD_QOS_21, fieldQOS); PipeWriter.writeInt(output,MSG_PUBLISH_3_FIELD_RETAIN_22, fieldRetain); PipeWriter.writeUTF8(output,MSG_PUBLISH_3_FIELD_TOPIC_23, fieldTopic); PipeWriter.writeBytes(output,MSG_PUBLISH_3_FIELD_PAYLOAD_25, fieldPayloadBacking, fieldPayloadPosition, fieldPayloadLength); PipeWriter.publishWrites(output); } public static void publishSubscribe(Pipe<MQTTClientToServerSchema> output, long fieldTime, int fieldPacketId, int fieldQOS, CharSequence fieldTopic) {
@Override public ByteConsumer stringAccumulator() { if (activeFieldLoc>0) { return PipeWriter.outputStream(pipe); } else { return nullByteConsumer; } }
public static boolean publishSubRequest(Pipe<BlockManagerRequestSchema> output, int fieldbits) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_SUBREQUEST_1)) { PipeWriter.writeInt(output,MSG_SUBREQUEST_1_FIELD_BITS_10, fieldbits); PipeWriter.publishWrites(output); result = true; } return result; } public static boolean publishSubRelease(Pipe<BlockManagerRequestSchema> output, long fieldId, byte[] fieldRouteBacking, int fieldRoutePosition, int fieldRouteLength) {
/** * Writes int to specified pipe * @param output pipe to write to * @param fieldIntValue int to write */ public static void publishInt(Pipe<TestDataSchema> output, int fieldIntValue) { PipeWriter.presumeWriteFragment(output, MSG_INT_40); PipeWriter.writeInt(output,MSG_INT_40_FIELD_INTVALUE_41, fieldIntValue); PipeWriter.publishWrites(output); }
/** * Writes long to specified pipe * @param output pipe to write to * @param fieldLongValue long to write */ public static void publishLong(Pipe<TestDataSchema> output, long fieldLongValue) { PipeWriter.presumeWriteFragment(output, MSG_LONG_50); PipeWriter.writeLong(output,MSG_LONG_50_FIELD_LONGVALUE_51, fieldLongValue); PipeWriter.publishWrites(output); } public static void publishChunkedStreamAndInt(Pipe<TestDataSchema> output, byte[] fieldByteArrayBacking, int fieldByteArrayPosition, int fieldByteArrayLength, int fieldIntValue) {
@Override public void run() { while ((activeChannelId != -1) && (null!=activeOutput) && PipeWriter.hasRoomForWrite(activeOutput) ) { PipeWriter.presumeWriteFragment(activeOutput, ServerResponseSchema.MSG_TOCHANNEL_100); PipeWriter.writeLong(activeOutput,ServerResponseSchema.MSG_TOCHANNEL_100_FIELD_CHANNELID_21, activeChannelId); PipeWriter.writeInt(activeOutput,ServerResponseSchema.MSG_TOCHANNEL_100_FIELD_SEQUENCENO_23, activeSequenceNo); DataOutputBlobWriter<ServerResponseSchema> outputStream = PipeWriter.outputStream(activeOutput); DataOutputBlobWriter.openField(outputStream); appendRemainingPayload(activeOutput); } //only do when previous is complete. if (null == activeOutput) { int i = this.inputs.length; while ((--i >= 0) && (activeChannelId == -1)) { process(inputs[i], outputs[i]); } } }
public static boolean publishSubscribe(Pipe<MQTTClientRequestSchema> output, int fieldQOS, CharSequence fieldTopic) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_SUBSCRIBE_8)) { PipeWriter.writeInt(output,MSG_SUBSCRIBE_8_FIELD_QOS_21, fieldQOS); PipeWriter.writeUTF8(output,MSG_SUBSCRIBE_8_FIELD_TOPIC_23, fieldTopic); PipeWriter.publishWrites(output); result = true; } return result; } public static boolean publishUnSubscribe(Pipe<MQTTClientRequestSchema> output, CharSequence fieldTopic) {
public static boolean publishReadHeader(Pipe<BlockManagerResponseSchema> output, long fieldId, byte[] fieldPayloadBacking, int fieldPayloadPosition, int fieldPayloadLength) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_READHEADER_8)) { PipeWriter.writeLong(output,MSG_READHEADER_8_FIELD_ID_11, fieldId); PipeWriter.writeBytes(output,MSG_READHEADER_8_FIELD_PAYLOAD_13, fieldPayloadBacking, fieldPayloadPosition, fieldPayloadLength); PipeWriter.publishWrites(output); result = true; } return result; } public static boolean publishBlockMounted(Pipe<BlockManagerResponseSchema> output, int fieldStatus) {
return msgCommandChannel.publishFailableOnPrivateTopic(token, writable); } else { if (msgCommandChannel.goHasRoom() && PipeWriter.hasRoomForWrite(msgCommandChannel.messagePubSub)) { PubSubWriter pw = (PubSubWriter) Pipe.outputStream(msgCommandChannel.messagePubSub); PipeWriter.presumeWriteFragment(msgCommandChannel.messagePubSub, MessagePubSub.MSG_PUBLISH_103); PipeWriter.writeInt(msgCommandChannel.messagePubSub, MessagePubSub.MSG_PUBLISH_103_FIELD_QOS_5, WaitFor.All.policy()); DataOutputBlobWriter<MessagePubSub> output = PipeWriter.outputStream(msgCommandChannel.messagePubSub); output.openField(); output.write(topicBytes, 0, topicBytes.length); PipeWriter.publishWrites(msgCommandChannel.messagePubSub);
/** * * @param blockId long arg used in PipeWriter.writeLong * @param w Writable arg used to write(stream) * @return if (PipeWriter.tryWriteFragment(target, PersistedBlobStoreProducerSchema.MSG_BLOCK_1)) true else false */ public boolean store(long blockId, Writable w) { if (PipeWriter.tryWriteFragment(target, PersistedBlobStoreProducerSchema.MSG_BLOCK_1)) { PipeWriter.writeLong(target,PersistedBlobStoreProducerSchema.MSG_BLOCK_1_FIELD_BLOCKID_3, blockId); DataOutputBlobWriter<PersistedBlobStoreProducerSchema> stream = PipeWriter.outputStream(target); DataOutputBlobWriter.openField(stream); w.write(stream); DataOutputBlobWriter.closeHighLevelField(stream, PersistedBlobStoreProducerSchema.MSG_BLOCK_1_FIELD_BYTEARRAY_2); PipeWriter.publishWrites(target); return true; } else { return false; } }
&& PipeWriter.tryWriteFragment(msgCommandChannel.messagePubSub, MessagePubSub.MSG_UNSUBSCRIBE_101)) { PipeWriter.writeInt(msgCommandChannel.messagePubSub, MessagePubSub.MSG_SUBSCRIBE_100_FIELD_SUBSCRIBERIDENTITYHASH_4, System.identityHashCode((PubSubMethodListenerBase)msgCommandChannel.listener)); DataOutputBlobWriter<MessagePubSub> output = PipeWriter.outputStream(msgCommandChannel.messagePubSub); output.openField(); output.append(topic); PipeWriter.publishWrites(msgCommandChannel.messagePubSub);
public static void publishChunkedStream(Pipe<RawDataSchema> output, byte[] fieldByteArrayBacking, int fieldByteArrayPosition, int fieldByteArrayLength) { PipeWriter.presumeWriteFragment(output, MSG_CHUNKEDSTREAM_1); PipeWriter.writeBytes(output,MSG_CHUNKEDSTREAM_1_FIELD_BYTEARRAY_2, fieldByteArrayBacking, fieldByteArrayPosition, fieldByteArrayLength); PipeWriter.publishWrites(output); }
@Override public void run() { while (messageCount>0) { if (PipeWriter.tryWriteFragment(outputRing, MESSAGE_LOC)) { PipeWriter.writeBytes(outputRing, FIELD_LOC, testArray, 0, testArray.length, Integer.MAX_VALUE); PipeWriter.publishWrites(outputRing); messageCount--; } else { return; } } PipeWriter.publishEOF(outputRing); requestShutdown(); return;//do not come back } }
public static boolean publishServerConnection(Pipe<ServerConnectionSchema> output, long fieldConnectionGroup, long fieldChannelId) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_SERVERCONNECTION_100)) { PipeWriter.writeLong(output,MSG_SERVERCONNECTION_100_FIELD_CONNECTIONGROUP_1, fieldConnectionGroup); PipeWriter.writeLong(output,MSG_SERVERCONNECTION_100_FIELD_CHANNELID_2, fieldChannelId); PipeWriter.publishWrites(output); result = true; } return result; }
public static boolean publishBlockMount(Pipe<BlockManagerRequestSchema> output, byte[] fieldRouteBacking, int fieldRoutePosition, int fieldRouteLength) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_BLOCKMOUNT_5)) { PipeWriter.writeBytes(output,MSG_BLOCKMOUNT_5_FIELD_ROUTE_14, fieldRouteBacking, fieldRoutePosition, fieldRouteLength); PipeWriter.publishWrites(output); result = true; } return result; } public static boolean publishBlockRequest(Pipe<BlockManagerRequestSchema> output, int fieldbits) {
public static boolean publishUnSubscribe(Pipe<MQTTClientRequestSchema> output, CharSequence fieldTopic) { boolean result = false; if (PipeWriter.tryWriteFragment(output, MSG_UNSUBSCRIBE_10)) { PipeWriter.writeUTF8(output,MSG_UNSUBSCRIBE_10_FIELD_TOPIC_23, fieldTopic); PipeWriter.publishWrites(output); result = true; } return result; }
@Override public void run() { if (PipeWriter.tryWriteFragment(output, RawDataSchema.MSG_CHUNKEDSTREAM_1)) { PipeWriter.writeASCII(output, RawDataSchema.MSG_CHUNKEDSTREAM_1_FIELD_BYTEARRAY_2, "test"); PipeWriter.publishWrites(output); } }
/** * * @return if (PipeWriter.tryWriteFragment(target, PersistedBlobStoreConsumerSchema.MSG_CLEAR_12)) true else false */ public boolean clear() { if (PipeWriter.tryWriteFragment(target, PersistedBlobStoreConsumerSchema.MSG_CLEAR_12)) { PipeWriter.publishWrites(target); return true; } else { return false; } }
private void emptyReplayImpl(boolean encryption, boolean telemetry) { Pipe<PersistedBlobStoreProducerSchema> perStoreProducer = PersistedBlobStoreProducerSchema.instance.newPipe(10, 1000); Pipe<PersistedBlobStoreConsumerSchema> perStoreConsumer = PersistedBlobStoreConsumerSchema.instance.newPipe(10, 1000); perStoreProducer.initBuffers(); perStoreConsumer.initBuffers(); PipeWriter.presumeWriteFragment(perStoreConsumer, PersistedBlobStoreConsumerSchema.MSG_REQUESTREPLAY_6); PipeWriter.publishWrites(perStoreConsumer); PipeWriter.publishEOF(perStoreConsumer); String result = runGraph(perStoreProducer, perStoreConsumer, encryption, telemetry); assertTrue(result, result.indexOf("BeginReplay")>0); assertTrue(result, result.indexOf("FinishReplay")>0); }
@Override public boolean isReady() { return PipeWriter.hasRoomForWrite(pipe); }