@@ -632,23 +632,27 @@ private SendResult syncSend(String destination, Message<?> message, long timeout
632
632
log .error ("syncSend failed. destination:{}, message is null " , destination );
633
633
throw new IllegalArgumentException ("`message` and `message.payload` cannot be null" );
634
634
}
635
+ if (Objects .isNull (mode )) {
636
+ throw new IllegalArgumentException ("`delay mode` can be null" );
637
+ }
638
+ if (delayTime <= 0 ) {
639
+ throw new IllegalArgumentException ("`delayTime` should be greater than 0" );
640
+ }
635
641
try {
636
642
long now = System .currentTimeMillis ();
637
643
org .apache .rocketmq .common .message .Message rocketMsg = this .createRocketMqMessage (destination , message );
638
- if (delayTime > 0 && Objects .nonNull (mode )) {
639
- switch (mode ) {
640
- case DELAY_SECONDS :
641
- rocketMsg .setDelayTimeSec (delayTime );
642
- break ;
643
- case DELAY_MILLISECONDS :
644
- rocketMsg .setDelayTimeMs (delayTime );
645
- break ;
646
- case DELIVER_TIME_MILLISECONDS :
647
- rocketMsg .setDeliverTimeMs (delayTime );
648
- break ;
649
- default :
650
- log .warn ("delay mode: {} not support" , mode );
651
- }
644
+ switch (mode ) {
645
+ case DELAY_SECONDS :
646
+ rocketMsg .setDelayTimeSec (delayTime );
647
+ break ;
648
+ case DELAY_MILLISECONDS :
649
+ rocketMsg .setDelayTimeMs (delayTime );
650
+ break ;
651
+ case DELIVER_TIME_MILLISECONDS :
652
+ rocketMsg .setDeliverTimeMs (delayTime );
653
+ break ;
654
+ default :
655
+ log .warn ("delay mode: {} not support" , mode );
652
656
}
653
657
SendResult sendResult = producer .send (rocketMsg , timeout );
654
658
long costTime = System .currentTimeMillis () - now ;
0 commit comments