You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2019/09/24 05:35:16 UTC

[GitHub] [servicecomb-pack] pengyu0929 commented on issue #562: 服用调用问题

pengyu0929 commented on issue #562: 服用调用问题
URL: https://github.com/apache/servicecomb-pack/issues/562#issuecomment-534396578
 
 
   这个A服务:
   ```java
    @SagaStart
       @Override
       @Transactional
       public String booking(Booking booking) {
           System.out.println(booking.getName() + " : 开始预定。。。");
           carFeignClient.bookingCar(booking.getName(), booking.getCars(), booking.getRooms());
           System.out.println("预定结束。。。");
           return booking.getName() + " booking " + booking.getRooms() + " rooms and " + booking.getCars() + " cars OK";
       }
   ```
   这个是B服务:
   ```java
    @Compensable(compensationMethod = "cancel")
       @Override
       @Transactional
       public CarBooking order(CarBooking booking, Integer rooms) {
           System.out.println(booking.getName() + " : 开始预定出租车。。。。");
           hotelFeignClient.bookingHotel("test", rooms);
           System.out.println(booking.getName() + " : 预定出租车成功 , 预定数量 : ");
           return booking;
       }
   
       public void cancel(CarBooking booking, Integer rooms) {
           System.out.println("预定出租车出现异常,开始退订。。。");
           System.out.println("退订出租车成功,数量 : ");
       }
   ```
   这个是C服务:
   ```java
   @Compensable(compensationMethod = "cancel")
       @Override
       @Transactional
       public HotelBooking order(HotelBooking booking) {
           System.out.println(booking.getName() + " : 开始预定房间。。。");
           int i = 1 / 0;
           System.out.println(booking.getName() + " : 预定房间成功,数量 : " + booking.getRoomAmount());
           return booking;
       }
   
       public void cancel(HotelBooking booking) {
           System.out.println("预定房间出现异常,开始退订。。");
           System.out.println("退订房间成功,数量 : " + booking.getRoomAmount());
       }
   ```
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services