// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/consumer/dao/TransferDao.java
// @Mapper
// public interface TransferDao {
// 
// 	@Update("update tb_account_two set amount = amount + #{amount} where acct_id = #{acctId}")
// 	public int increaseAmount(@Param("acctId") String accountId, @Param("amount") double amount);
// 
// 	@Update("update tb_account_two set amount = amount - #{amount} where acct_id = #{acctId}")
// 	public int cancelIncrease(@Param("acctId") String accountId, @Param("amount") double amount);
// 
// }
// 
// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/consumer/service/ITransferService.java
// public interface ITransferService {
// 
// 	public void transfer(String sourceAcctId, String targetAcctId, double amount);
// 
// }
// 
// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/feign/service/IAccountService.java
// @FeignClient(value = "SPRINGCLOUD-SAMPLE-PROVIDER")
// public interface IAccountService {
// 
// 	@RequestMapping(method = RequestMethod.POST, value = "/increase")
// 	public void increaseAmount(@RequestParam("acctId") String accountId, @RequestParam("amount") double amount);
// 
// 	@RequestMapping(method = RequestMethod.POST, value = "/decrease")
// 	public void decreaseAmount(@RequestParam("acctId") String accountId, @RequestParam("amount") double amount);
// 
// }


import org.bytesoft.compensable.Compensable;
import org.bytesoft.compensable.CompensableCancel;
import org.bytesoft.compensable.CompensableConfirm;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.bytesvc.consumer.dao.TransferDao;
import com.bytesvc.consumer.service.ITransferService;
import com.bytesvc.feign.service.IAccountService;
package com.bytesvc.consumer.controller;



@Compensable(interfaceClass = ITransferService.class, simplified = true)
@RestController
public class SimplifiedController implements ITransferService {
	@Autowired
// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/consumer/dao/TransferDao.java
// @Mapper
// public interface TransferDao {
// 
// 	@Update("update tb_account_two set amount = amount + #{amount} where acct_id = #{acctId}")
// 	public int increaseAmount(@Param("acctId") String accountId, @Param("amount") double amount);
// 
// 	@Update("update tb_account_two set amount = amount - #{amount} where acct_id = #{acctId}")
// 	public int cancelIncrease(@Param("acctId") String accountId, @Param("amount") double amount);
// 
// }
// 
// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/consumer/service/ITransferService.java
// public interface ITransferService {
// 
// 	public void transfer(String sourceAcctId, String targetAcctId, double amount);
// 
// }
// 
// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/feign/service/IAccountService.java
// @FeignClient(value = "SPRINGCLOUD-SAMPLE-PROVIDER")
// public interface IAccountService {
// 
// 	@RequestMapping(method = RequestMethod.POST, value = "/increase")
// 	public void increaseAmount(@RequestParam("acctId") String accountId, @RequestParam("amount") double amount);
// 
// 	@RequestMapping(method = RequestMethod.POST, value = "/decrease")
// 	public void decreaseAmount(@RequestParam("acctId") String accountId, @RequestParam("amount") double amount);
// 
// }


// Path: springcloud-sample/sample-consumer/src/main/java/com/bytesvc/consumer/controller/SimplifiedController.java
import org.bytesoft.compensable.Compensable;
import org.bytesoft.compensable.CompensableCancel;
import org.bytesoft.compensable.CompensableConfirm;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.bytesvc.consumer.dao.TransferDao;
import com.bytesvc.consumer.service.ITransferService;
import com.bytesvc.feign.service.IAccountService;

package com.bytesvc.consumer.controller;



@Compensable(interfaceClass = ITransferService.class, simplified = true)
@RestController
public class SimplifiedController implements ITransferService {
	@Autowired
	private TransferDao transferDao;