मैं स्ट्रीम श्रोता के साथ संदेशों का उपभोग रोकने का एक तरीका ढूंढ रहा हूं।

@StreamListener(MBinding.M_INPUT)
    public void consumeMessage(Message<MerchantEvent> message) {
    //handle when receive message
 }

cloud:
        stream:
            bindings:
                MInput:
                    destination: topicName
                    group: groupName

मैंने इसे गुगल किया है लेकिन अभी भी यह नहीं पता कि उपभोग करना कैसे बंद किया जाए। क्या कोई है जो इसे जानता है?

1
Park Jay 11 नवम्बर 2019, 06:24

1 उत्तर

सबसे बढ़िया उत्तर

आप इसे एक्चुएटर का उपयोग करके कर सकते हैं (देखें बाध्यकारी विज़ुअलाइज़ेशन और नियंत्रण)। या आप एंडपॉइंट प्रोग्रामेटिक रूप से लागू कर सकते हैं।

@SpringBootApplication
@EnableBinding(Sink.class)
public class So58795176Application {

    public static void main(String[] args) {
        SpringApplication.run(So58795176Application.class, args);
    }

    @StreamListener(Sink.INPUT)
    public void listen(String in) {
        System.out.println();
    }

    @Autowired
    BindingsEndpoint endpoint;

    @Bean
    public ApplicationRunner runner() {
        return args -> {
            System.in.read();
            endpoint.changeState("input", State.STOPPED);
            System.in.read();
            endpoint.changeState("input", State.STARTED);
        };
    }

}
3
Shubham 23 जिंदा 2021, 14:22