public KeyValuePairStrategy( IMailingHistoryService mailingHistoryService, IMciRequestService mciRequestService, IClientScopeService clientScopeService, ILog logger, IPermissionService permissionsService, IMembershipService membershipService, ICustomerDetailsService customerDetailsService, ITravelSummaryService travelSummaryService, ICustomerMatchService customerMatchService, IKeyValueStrategyReaderPart membershipFlagsKeyValueReader, ICustomerDetailsProcess customerDetailsProcess, ICustomerKeyProcess customerKeyProcess, IIndex <NameAndAddressStrategyReaderImplementations, INameAndAddressStrategyReaderPart> nameAndAddressReaders ) { _mailingHistoryService = mailingHistoryService; _mciRequestService = mciRequestService; _clientScopeService = clientScopeService; _permissionService = permissionsService; _membershipService = membershipService; _customerDetailsService = customerDetailsService; _travelSummaryService = travelSummaryService; _customerMatchService = customerMatchService; _logger = logger; _membershipFlagsKeyValueReader = membershipFlagsKeyValueReader; _customerDetailsProcess = customerDetailsProcess; _customerKeyProcess = customerKeyProcess; _nameAndAddressReaders = nameAndAddressReaders; _membershipOptionsReader = _nameAndAddressReaders[NameAndAddressStrategyReaderImplementations.MembershipOptionsReaderPart]; // Set local ref to V1 reader }
public KeyValuePairStrategyV2( IMailingHistoryService mailingHistoryService, IMciRequestService mciRequestService, IClientScopeService clientScopeService, ILog logger, IPermissionService permissionsService, IMembershipService membershipService, ICustomerDetailsService customerDetailsService, ITravelSummaryService travelSummaryService, ICustomerMatchService customerMatchService, IKeyValueStrategyReaderPart membershipFlagsKeyValueReader, ICustomerDetailsProcess customerDetailsProcess, ICustomerKeyProcess customerKeyProcess, IIndex <NameAndAddressStrategyReaderImplementations, INameAndAddressStrategyReaderPart> nameAndAddressReaders ) : base( mailingHistoryService, mciRequestService, clientScopeService, logger, permissionsService, membershipService, customerDetailsService, travelSummaryService, customerMatchService, membershipFlagsKeyValueReader, customerDetailsProcess, customerKeyProcess, nameAndAddressReaders ) { // Override Membership Options and details readers : Base class Execute() method will call the V2 implementation below _membershipOptionsReader = _nameAndAddressReaders[NameAndAddressStrategyReaderImplementations.MembershipOptionsReaderPartV2]; // Set local ref to V2 reader }