public static ParallelQueueProducerOptions <TEntity> UseMemory <TEntity>( this ParallelQueueProducerOptions <TEntity> options) { options.SetProducer((sp, name) => { return(new MemoryQueueProducer <TEntity>()); }); return(options); }
public static ParallelQueueProducerOptions <TEntity> UseRedis <TEntity>( this ParallelQueueProducerOptions <TEntity> options, Action <RedisOptions> redisOptions) { options.SetProducer((sp, name) => { RedisOptions ro = new RedisOptions(); redisOptions?.Invoke(ro); ILogger <QueueProducer <TEntity> > logger = sp.GetRequiredService <ILogger <QueueProducer <TEntity> > >(); RedisConnectionManager connManager = sp.GetRequiredService <RedisConnectionManager>(); return(new QueueProducer <TEntity>(name, ro, connManager, logger)); }); return(options); }