package com.test1; import com.lmax.disruptor.EventTranslatorOneArg; import com.lmax.disruptor.RingBuffer; public class LongEventProducerWithTranslator { // 一个translator可以看做一个事件初始化器,publicEvent方法会调用它 // 填充Event private static final EventTranslatorOneArg<LongEvent, String> TRANSLATOR = new EventTranslatorOneArg<LongEvent, String>() { public void translateTo(LongEvent event, long sequence,String message) { event.setMessage(message); } }; private final RingBuffer<LongEvent> ringBuffer; public LongEventProducerWithTranslator(RingBuffer<LongEvent> ringBuffer) { this.ringBuffer = ringBuffer; } public void onData(String message) { ringBuffer.publishEvent(TRANSLATOR, message); } }