Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RuleBasedDealsSelector"/> class.
        /// </summary>
        /// <param name="dealsClient">
        /// The deals client.
        /// </param>
        /// <param name="dealsSelectionRules">
        /// The deals selection rules.
        /// </param>
        /// <exception cref="ArgumentNullException">dealsClient or dealsSelectionRules are null </exception>
        public RuleBasedDealsSelector(IDealsClient dealsClient, DealsSelectionRules dealsSelectionRules)
        {
            if (dealsClient == null)
            {
                throw new ArgumentNullException("dealsClient");
            }

            if (dealsSelectionRules == null)
            {
                throw new ArgumentNullException("dealsSelectionRules");
            }

            this.dealsClient = dealsClient;
            this.defaultDealsSelectionConditions = dealsSelectionRules.Default;
            this.dealsLocations = dealsSelectionRules.Locations.ToDictionary(elem => elem.Id, elem => elem);
        }
Beispiel #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RuleBasedDealsSelector"/> class.
 /// </summary>
 /// <param name="dealsClient">
 /// The deals client.
 /// </param>
 /// <param name="settingsContainerClient">
 /// The settings Container Client.
 /// </param>
 public RuleBasedDealsSelector(IDealsClient dealsClient, SettingsContainerClient settingsContainerClient)
     : this(dealsClient, settingsContainerClient.GetDealsSelectionRules())
 {
 }
Beispiel #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NaiveDealsSelector"/> class.
 /// </summary>
 /// <param name="dealsClient">
 /// The deals client.
 /// </param>
 public NaiveDealsSelector(IDealsClient dealsClient)
 {
     this.dealsClient = dealsClient;
 }