Skip to content

Commit 6b905ed

Browse files
sjuarezgxsjuarez
andauthored
Give support to manage single message in Azure Functions Service Bus (#1093)
Co-authored-by: sjuarez <sabrina.juarez@globant.com>
1 parent e05d14d commit 6b905ed

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

dotnet/src/extensions/Azure/Handlers/ServiceBusHandler/ServiceBusTriggerHandler.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,25 @@ public async Task Run(ServiceBusReceivedMessage[] myQueueItem, FunctionContext c
4141
throw;
4242
}
4343
}
44+
45+
public async Task RunSingle(ServiceBusReceivedMessage myQueueItem, FunctionContext context)
46+
{
47+
var log = context.GetLogger("ServiceBusTriggerHandler");
48+
string functionName = context.FunctionDefinition.Name;
49+
50+
log.LogInformation($"GeneXus Service Bus trigger handler. Function processed: {functionName}.");
51+
52+
try
53+
{
54+
ServiceBusReceivedMessage[] queueItems = new ServiceBusReceivedMessage[] { myQueueItem };
55+
await ProcessMessages(context, log, queueItems);
56+
}
57+
catch (Exception ex) //Catch System exception and retry
58+
{
59+
log.LogError(ex.ToString());
60+
throw;
61+
}
62+
}
4463
private Task ProcessMessages(FunctionContext context, ILogger log, ServiceBusReceivedMessage[] messages)
4564
{
4665
string envVar = $"GX_AZURE_{context.FunctionDefinition.Name.ToUpper()}_CLASS";

0 commit comments

Comments
 (0)