Skip to content

Commit f03a0b1

Browse files
committed
🐛 Fixed some bugs of RabbitMQBus.
1 parent eb83eef commit f03a0b1

File tree

5 files changed

+13
-12
lines changed

5 files changed

+13
-12
lines changed

build/releasenotes.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@
4646
2. Update EasyCaching.Core.
4747
</EasyCachingRedisBusPackageNotes>
4848
<EasyCachingRabbitBusPackageNotes>
49-
1. Modify the default section name.
50-
2. Update EasyCaching.Core.
49+
1. Fixed Options Bug.
50+
2. Fixed Queue Bind Bug.
5151
</EasyCachingRabbitBusPackageNotes>
5252
</PropertyGroup>
5353
</Project>

build/version.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@
1515
<EasyCachingCSRedisPackageVersion>0.5.1</EasyCachingCSRedisPackageVersion>
1616
<EasyCachingRedisBusPackageVersion>0.5.1</EasyCachingRedisBusPackageVersion>
1717
<EasyCachingCSRedisBusPackageVersion>0.5.1</EasyCachingCSRedisBusPackageVersion>
18-
<EasyCachingRabbitBusPackageVersion>0.5.1</EasyCachingRabbitBusPackageVersion>
18+
<EasyCachingRabbitBusPackageVersion>0.5.1.1</EasyCachingRabbitBusPackageVersion>
1919
</PropertyGroup>
2020
</Project>

src/EasyCaching.Bus.RabbitMQ/Configurations/EasyCachingOptionsExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ void configure(RabbitMQBusOptions x)
4747
x.Port = busOptions.Port;
4848
x.QueueMessageExpires = busOptions.QueueMessageExpires;
4949
x.RequestedConnectionTimeout = busOptions.RequestedConnectionTimeout;
50-
x.RouteKey = busOptions.RouteKey;
50+
//x.RouteKey = busOptions.RouteKey;
5151
x.SocketReadTimeout = busOptions.SocketReadTimeout;
5252
x.SocketWriteTimeout = busOptions.SocketWriteTimeout;
5353
x.TopicExchangeName = busOptions.TopicExchangeName;

src/EasyCaching.Bus.RabbitMQ/Configurations/RabbitMQBusOptions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public class RabbitMQBusOptions : BaseRabbitMQOptions
1111
/// Gets or sets the route key.
1212
/// </summary>
1313
/// <value>The route key.</value>
14-
public string RouteKey { get; set; } = "rmq.queue.undurable.easycaching.subscriber.*";
14+
//public string RouteKey { get; set; } = "rmq.queue.undurable.easycaching.subscriber.*";
1515

1616
/// <summary>
1717
/// Gets or sets the name of the queue.

src/EasyCaching.Bus.RabbitMQ/DefaultRabbitMQBus.cs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using global::RabbitMQ.Client;
99
using global::RabbitMQ.Client.Events;
1010
using Microsoft.Extensions.ObjectPool;
11+
using Microsoft.Extensions.Options;
1112

1213
/// <summary>
1314
/// Default RabbitMQ Bus.
@@ -52,10 +53,10 @@ public class DefaultRabbitMQBus : IEasyCachingBus
5253
/// <param name="serializer">Serializer.</param>
5354
public DefaultRabbitMQBus(
5455
IPooledObjectPolicy<IConnection> _objectPolicy
55-
,RabbitMQBusOptions rabbitMQOptions
56-
,IEasyCachingSerializer serializer)
56+
, IOptions<RabbitMQBusOptions> rabbitMQOptions
57+
, IEasyCachingSerializer serializer)
5758
{
58-
this._options = rabbitMQOptions;
59+
this._options = rabbitMQOptions.Value;
5960
this._serializer = serializer;
6061

6162
var factory = new ConnectionFactory
@@ -132,7 +133,7 @@ public void Publish(string topic, EasyCachingMessage message)
132133
}
133134
return Task.CompletedTask;
134135
}
135-
136+
136137
/// <summary>
137138
/// Subscribe the specified topic and action.
138139
/// </summary>
@@ -142,7 +143,7 @@ public void Subscribe(string topic, Action<EasyCachingMessage> action)
142143
{
143144
_handler = action;
144145
var queueName = string.Empty;
145-
if(string.IsNullOrWhiteSpace(_options.QueueName))
146+
if (string.IsNullOrWhiteSpace(_options.QueueName))
146147
{
147148
queueName = $"rmq.queue.undurable.easycaching.subscriber.{_busId}";
148149
}
@@ -151,13 +152,13 @@ public void Subscribe(string topic, Action<EasyCachingMessage> action)
151152
queueName = _options.QueueName;
152153
}
153154

154-
Task.Factory.StartNew(() =>
155+
Task.Factory.StartNew(() =>
155156
{
156157
var model = _subConnection.CreateModel();
157158
model.ExchangeDeclare(_options.TopicExchangeName, ExchangeType.Topic, true, false, null);
158159
model.QueueDeclare(queueName, false, false, true, null);
159160
// bind the queue with the exchange.
160-
model.QueueBind(_options.TopicExchangeName, queueName, _options.RouteKey);
161+
model.QueueBind(queueName, _options.TopicExchangeName, topic);
161162
var consumer = new EventingBasicConsumer(model);
162163
consumer.Received += OnMessage;
163164
consumer.Shutdown += OnConsumerShutdown;

0 commit comments

Comments
 (0)