Commit 77052cb1 authored by Savorboard's avatar Savorboard

Fix received storage message retry bug. #473

parent b66031c2
......@@ -2,7 +2,7 @@
<PropertyGroup>
<VersionMajor>3</VersionMajor>
<VersionMinor>0</VersionMinor>
<VersionPatch>0</VersionPatch>
<VersionPatch>1</VersionPatch>
<VersionQuality></VersionQuality>
<VersionPrefix>$(VersionMajor).$(VersionMinor).$(VersionPatch)</VersionPrefix>
</PropertyGroup>
......
......@@ -9,6 +9,7 @@ using DotNetCore.CAP.Messages;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Internal;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json.Linq;
namespace DotNetCore.CAP.Internal
{
......@@ -61,10 +62,17 @@ namespace DotNetCore.CAP.Internal
executeParameters[i] = new CapHeader(message.Headers);
}
else
{
if (message.Value is JObject jValue) //reading from storage
{
executeParameters[i] = jValue.ToObject(parameterDescriptors[i].ParameterType);
}
else
{
executeParameters[i] = message.Value;
}
}
}
var resultObj = await ExecuteWithParameterAsync(executor, obj, executeParameters);
return new ConsumerExecutedResult(resultObj, message.GetId(), message.GetCallbackName());
......
......@@ -55,6 +55,7 @@ namespace DotNetCore.CAP.Processor
foreach (var message in messages)
{
//the message.Origin.Value maybe JObject
await _messageSender.SendAsync(message);
await context.WaitAsync(_delay);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment