示例#1
0
 public QueueService(IPersistantQueue persistantQueue, IQueueItemSerializer itemSerializer)
 {
     if (persistantQueue == null) throw new ArgumentNullException("persistantQueue");
     _queue = persistantQueue;
     _itemSerializer = itemSerializer;
     _queue.Open();
 }
示例#2
0
        public QueueService(string queueDirectory, string optionalReadQueueDirectory, string queueName,
            IQueueItemSerializer itemSerializer)
        {
            _itemSerializer = itemSerializer;
            if (!Directory.Exists(queueDirectory))
                Directory.CreateDirectory(queueDirectory);

            _queue = new PersistantQueue(queueDirectory, optionalReadQueueDirectory, queueName);
            _queue.Open();
        }
示例#3
0
 public QueueService(IPersistantQueue persistantQueue, IQueueItemSerializer itemSerializer)
 {
     if (persistantQueue == null)
     {
         throw new ArgumentNullException("persistantQueue");
     }
     _queue          = persistantQueue;
     _itemSerializer = itemSerializer;
     _queue.Open();
 }
示例#4
0
        public QueueService(string queueDirectory, string optionalReadQueueDirectory, string queueName,
                            IQueueItemSerializer itemSerializer)
        {
            _itemSerializer = itemSerializer;
            if (!Directory.Exists(queueDirectory))
            {
                Directory.CreateDirectory(queueDirectory);
            }

            _queue = new PersistantQueue(queueDirectory, optionalReadQueueDirectory, queueName);
            _queue.Open();
        }
        //--- Constructors ---

        /// <summary>
        /// Create a new Queue given an <see cref="IQueueStream"/> storage provider and an <see cref="IQueueItemSerializer{T}"/> serializer for type T.
        /// </summary>
        /// <remarks>
        /// This class assumes ownership of the provided <see cref="IQueueStream"/> resource and will dispose it upon instance disposal
        /// </remarks>
        /// <param name="stream">An implementation of <see cref="IQueueStream"/> <seealso cref="SingleFileQueueStream"/><seealso cref="MultiFileQueueStream"/></param>
        /// <param name="serializer">A serializer implementation of <see cref="IQueueItemSerializer{T}"/> for type T</param>
        public TransactionalQueue(IQueueStream stream, IQueueItemSerializer <T> serializer)
        {
            _stream              = stream;
            _serializer          = serializer;
            DefaultCommitTimeout = TimeSpan.FromSeconds(30);
        }