Files
Thermal-Resistance-Checker-…/SpeckleAutomateDotnetExample/AutomateFunction.cs
T
Oğuzhan Koral 6ad114796e Initial commit
2024-10-31 14:24:54 +03:00

34 lines
979 B
C#

using Objects;
using Speckle.Automate.Sdk;
using Speckle.Core.Models.Extensions;
public static class AutomateFunction
{
public static async Task Run(
AutomationContext automationContext,
FunctionInputs functionInputs
)
{
Console.WriteLine("Starting execution");
_ = typeof(ObjectsKit).Assembly; // INFO: Force objects kit to initialize
Console.WriteLine("Receiving version");
var commitObject = await automationContext.ReceiveVersion();
Console.WriteLine("Received version: " + commitObject);
var count = commitObject
.Flatten()
.Count(b => b.speckle_type == functionInputs.SpeckleTypeToCount);
Console.WriteLine($"Counted {count} objects");
if (count < functionInputs.SpeckleTypeTargetCount) {
automationContext.MarkRunFailed($"Counted {count} objects where {functionInputs.SpeckleTypeTargetCount} were expected");
return;
}
automationContext.MarkRunSuccess($"Counted {count} objects");
}
}