using CRIF.ACTion.Common; using CRIF.ACTion.Configuration; using CRIF.ACTion.Loan.Assets; namespace CRIF.ACTion.Loan { public class HelocFlexAppBuilder : ILoanApplicationRequestBuilder { private readonly CrifSettings _settings; public HelocFlexAppBuilder(CrifSettings settings) { _settings = settings; } public void SetDetails(LoanApplicationRequestBuilder createApp) { createApp.AppDetails = new AppDetailHelocSection(createApp.CrifRequestSectionNamespace, _settings); ((AppDetailHelocSection)createApp.AppDetails).AddPropertyDetails(createApp.LoanApplication.RealEstate); ((AppDetailHelocSection)createApp.AppDetails).AddHmdaDisclosed(createApp.LoanApplication.PrimaryBorrower.HmdaValues.HmdaNoticeDisclosed); createApp.Properties.AddProperty(new RealEstateProperty(createApp.LoanApplication.RealEstate)); createApp.Addresses.AddAddress(createApp.LoanApplication.RealEstate.RealEstateAddress, ContactMechanisms.CrifContactMechanism.RealEstateAddress); createApp.AppDetails.SetDetails(createApp.LoanApplication, createApp._sourceChannel); } } }