public PublishAcknowledgeMiddleware(IExclusiveLock exclusive, PublishAcknowledgeOptions options = null)
 {
     _exclusive  = exclusive;
     TimeOutFunc = options?.TimeOutFunc ?? (context => context.GetPublishAcknowledgeTimeout());
     ChannelFunc = options?.ChannelFunc ?? (context => context.GetTransientChannel());
     EnabledFunc = options?.EnabledFunc ?? (context => context.GetPublishAcknowledgeTimeout() != TimeSpan.MaxValue);
 }
示例#2
0
 public PublishAcknowledgeMiddleware(IExclusiveLock exclusive, ILogger <PublishAcknowledgeMiddleware> logger, PublishAcknowledgeOptions options = null)
 {
     _exclusive  = exclusive ?? throw new ArgumentNullException(nameof(exclusive));
     _logger     = logger ?? throw new ArgumentNullException(nameof(logger));
     TimeOutFunc = options?.TimeOutFunc ?? (context => context.GetPublishAcknowledgeTimeout());
     ChannelFunc = options?.ChannelFunc ?? (context => context.GetTransientChannel());
     EnabledFunc = options?.EnabledFunc ?? (context => context.GetPublishAcknowledgeTimeout() != TimeSpan.MaxValue);
 }
 public BasicPublishMiddleware(IExclusiveLock exclusive, BasicPublishOptions options = null)
 {
     Exclusive        = exclusive;
     ChannelFunc      = options?.ChannelFunc ?? (context => context.GetTransientChannel());
     ExchangeNameFunc = options?.ExchangeNameFunc ?? (c => c.GetBasicPublishConfiguration()?.ExchangeName);
     RoutingKeyFunc   = options?.RoutingKeyFunc ?? (c => c.GetBasicPublishConfiguration()?.RoutingKey);
     MandatoryFunc    = options?.MandatoryFunc ?? (c => c.GetBasicPublishConfiguration()?.Mandatory ?? false);
     BasicPropsFunc   = options?.BasicPropsFunc ?? (c => c.GetBasicProperties());
     BodyFunc         = options?.BodyFunc ?? (c => c.GetBasicPublishConfiguration()?.Body);
 }
 public BasicPublishMiddleware(IExclusiveLock exclusive, ILogger <BasicPublishMiddleware> logger, BasicPublishOptions options = null)
 {
     Exclusive        = exclusive ?? throw new ArgumentNullException(nameof(exclusive));
     Logger           = logger ?? throw new ArgumentNullException(nameof(logger));
     ChannelFunc      = options?.ChannelFunc ?? (context => context.GetTransientChannel());
     ExchangeNameFunc = options?.ExchangeNameFunc ?? (c => c.GetBasicPublishConfiguration()?.ExchangeName);
     RoutingKeyFunc   = options?.RoutingKeyFunc ?? (c => c.GetBasicPublishConfiguration()?.RoutingKey);
     MandatoryFunc    = options?.MandatoryFunc ?? (c => c.GetBasicPublishConfiguration()?.Mandatory ?? false);
     BasicPropsFunc   = options?.BasicPropsFunc ?? (c => c.GetBasicProperties());
     BodyFunc         = options?.BodyFunc ?? (c => c.GetBasicPublishConfiguration()?.Body);
 }
 internal FIFOConditionVariable(IExclusiveLock exclusiveLock)
     : base(exclusiveLock)
 {
 }
示例#6
0
 /// <summary>
 /// Create a new <see cref="FIFOConditionVariable"/> that relies on the
 /// given mutual exclusion lock.
 /// </summary>
 /// <param name="lock">A non-reentrant mutual exclusion lock.</param>
 internal FIFOConditionVariable(IExclusiveLock @lock) : base(@lock)
 {
 }
 public ExclusiveLockEngine(IExclusiveLock exclusive, TimeSpan lockCheckFrequency)
 {
     _exclusiveLock      = exclusive;
     _lockCheckFrequency = lockCheckFrequency;
 }
示例#8
0
 /// <summary> 
 /// Create a new <see cref="ConditionVariable"/> that relies on the given mutual
 /// exclusion lock.
 /// </summary>
 /// <param name="exclusiveLock">
 /// A non-reentrant mutual exclusion lock.
 /// </param>
 internal ConditionVariable(IExclusiveLock exclusiveLock)
 {
     _internalExclusiveLock = exclusiveLock;
 }
 /// <summary>
 /// Create a new <see cref="ConditionVariable"/> that relies on the given mutual
 /// exclusion lock.
 /// </summary>
 /// <param name="lock">
 /// A non-reentrant mutual exclusion lock.
 /// </param>
 internal ConditionVariable(IExclusiveLock @lock)
 {
     _lock = @lock;
 }
示例#10
0
 /// <summary> 
 /// Create a new <see cref="ConditionVariable"/> that relies on the given mutual
 /// exclusion lock.
 /// </summary>
 /// <param name="lock">
 /// A non-reentrant mutual exclusion lock.
 /// </param>
 internal ConditionVariable(IExclusiveLock @lock)
 {
     _lock = @lock;
 }
 public BasicPublishMiddleware(IExclusiveLock exclusive, BasicPublishOptions options = null)
     : base(exclusive, options)
 {
 }
示例#12
0
 /// <summary>
 /// Create a new <see cref="ConditionVariable"/> that relies on the given mutual
 /// exclusion lock.
 /// </summary>
 /// <param name="exclusiveLock">
 /// A non-reentrant mutual exclusion lock.
 /// </param>
 internal ConditionVariable(IExclusiveLock exclusiveLock)
 {
     _internalExclusiveLock = exclusiveLock;
 }
 public BasicPublishMiddleware(IExclusiveLock exclusive, ILogger <Pipe.Middleware.BasicPublishMiddleware> logger, BasicPublishOptions options = null)
     : base(exclusive, logger, options)
 {
 }