Exemplo n.º 1
0
 /// <summary>
 /// Sessioned campaign audience constructor.
 /// </summary>
 /// <param name="config">Configuration object which injected for correct store execution.</param>
 public SessionedCampaignAudience(CampaignAudienceConfig config)
     : base(config.UserConnection, config.CampaignId)
 {
     config.CheckArgumentNull("config");
     CampaignParticipantTableName = "CampaignParticipantOp";
     SessionId = config.SessionId;
 }
 private CampaignAudienceDataSource ResolveDataSource(CampaignAudienceConfig config)
 {
     config.CheckArgumentNull("config");
     if (config.SessionId != default(Guid))
     {
         return(CampaignAudienceDataSource.SessionedAudience);
     }
     return(CampaignAudienceDataSource.DefaultAudience);
 }
        /// <summary>
        /// Create object for manipulation campaign audience based on config <paramref name="config"/>.
        /// </summary>
        /// <param name="config">Contains description for campaign audience class.</param>
        /// <returns>Concrete instance of campaign audience object.</returns>
        public ICampaignAudience GetCampaignAudience(CampaignAudienceConfig config)
        {
            var dataSourceKey = ResolveDataSource(config);

            if (!_dataSources.ContainsKey(dataSourceKey))
            {
                throw new KeyNotFoundException();
            }
            return(_dataSources[dataSourceKey](config));
        }
Exemplo n.º 4
0
 public CampaignAudience(CampaignAudienceConfig config)
     : this(config.UserConnection, config.CampaignId)
 {
     CampaignScheduledDate = config.CampaignScheduledDate;
 }