protected override async Task <CalculatePremiumResponse> HandleCoreAsync(CalculatePremiumRequest request) { var premiumCalculator = await ContractsFactory.CreatePremiumCalculatorFromAddressAsync(request.ProductAddress); return(new CalculatePremiumResponse { Premium = await premiumCalculator.CalculatePremiumAsync(request.MobileData) }); }
protected override async Task <ValidateDataResponse> HandleCoreAsync(ValidateDataRequest request) { var premiumCalculator = await ContractsFactory.CreatePremiumCalculatorFromAddressAsync(request.ProductAddress); return(new ValidateDataResponse { ValidationResultCode = await premiumCalculator.ValidateAsync(request.MobileData) }); }
protected override async Task <ClaimResponse> HandleCoreAsync(AddClaimRequest request) { var productContract = await ContractsFactory.CreateProductFromAddressAsync(request.ProductAddress); ClaimResponse response = new ClaimResponse(); response.TxId = await productContract.ClaimAsync(request.PolicyId, request.ClaimProperties); return(response); }
protected override async Task <AddPolicyResponse> HandleCoreAsync(AddPolicyRequest request) { var insuranceProductContract = await ContractsFactory.CreateProductFromAddressAsync(request.ProductAddress); AddPolicyResponse response = new AddPolicyResponse(); response.TxId = await insuranceProductContract.AddPolicyAsync(request.PolicyId, request.Payout, request.Properties); return(response); }