示例#1
0
        public AzureQueueExt(string conectionString, string queueName, IQueueMessageSerializer serializer = null)
        {
            queueName = queueName.ToLower();
            var storageAccount = CloudStorageAccount.Parse(conectionString);
            var queueClient    = storageAccount.CreateCloudQueueClient();

            _queue = queueClient.GetQueueReference(queueName);
            _queue.CreateIfNotExistsAsync().Wait();
            _serializer = serializer ?? new DefaultQueueSerializer();
        }
        public AzureQueueExt(string conectionString, string queueName, IQueueMessageSerializer serializer = null)
        {
            queueName = queueName.ToLower();
            var storageAccount = CloudStorageAccount.Parse(conectionString);
            var queueClient = storageAccount.CreateCloudQueueClient();

            _queue = queueClient.GetQueueReference(queueName);
            _queue.CreateIfNotExistsAsync().Wait();
            _serializer = serializer ?? new DefaultQueueSerializer();
        }
示例#3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Buffer" /> class.
        /// </summary>
        /// <param name="loggerFactory">The logger factory.</param>
        /// <param name="queueWrapper">The queue wrapper.</param>
        /// <param name="queueMessageSerializer">The queue message serializer.</param>
        public Buffer(
            [NotNull] ILoggerFactory loggerFactory,
            [NotNull] IQueueWrapper queueWrapper,
            [NotNull] IQueueMessageSerializer queueMessageSerializer)
        {
            this.subject = new ConcurrentBag <VersionedMessage>();

            this.queueWrapper           = queueWrapper;
            this.queueMessageSerializer = queueMessageSerializer;

            this.logger = loggerFactory.CreateLogger <Buffer>();
        }
示例#4
0
        public async ValueTask InitializeAsync(string clientName)
        {
            this.Configuration = this.ConfigurationAccessor.Get(clientName);
            this.Serializer    = (IQueueMessageSerializer)ActivatorUtilities.CreateInstance(this.ServiceProvider, this.Configuration.MessageSerializerType);

            if (!CloudStorageAccount.TryParse(this.Configuration.ConnectionString, out CloudStorageAccount account))
            {
                throw new InvalidDataException($"Azure queue connection string for queue client '{clientName}' could not be parsed.");
            }

            var client = account.CreateCloudQueueClient();

            this.Queue = client.GetQueueReference(this.Configuration.QueueName);
            await this.Queue.CreateIfNotExistsAsync();
        }
 public SqlServerQueueClient(QueueDbContext queueDbContext, IQueueMessageSerializer messageSerializer)
 {
     this.DbContext         = queueDbContext;
     this.MessageSerializer = messageSerializer;
 }