public static async Task <HttpResponseMessage> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "api/policy/{policyId:long}")] HttpRequestMessage req, ILogger log, long policyId) { try { var result = await FunctionActivator.Activate <IFunction>("GetPolicy") .InvokeAsync <GetPolicyFunctionModel, object>( // TODO - this could be moved out to a model factory/binder, when re-use becomes necessary new GetPolicyFunctionModel() { PolicyId = policyId, ResourceUri = req.RequestUri } , log).ConfigureAwait(false); return(req.CreateResponse(HttpStatusCode.OK, result)); } catch (Exception ex) { log?.LogError($"Exception in function GetPolicyHandler -> { ex.GetBaseException().Message }"); } return(req.CreateResponse(HttpStatusCode.InternalServerError)); }
public static async Task <HttpResponseMessage> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "api/policy/{policyId:long}")] HttpRequestMessage req, ILogger log) { try { var result = await FunctionActivator.Activate <IFunction>("PostPolicy") .InvokeAsync <PostPolicyFunctionModel, string>(null, log).ConfigureAwait(false); return(req.CreateResponse(HttpStatusCode.OK, $"Policy State is { result }")); } catch (Exception ex) { log?.LogError($"Exception in function GetPolicyHandler -> { ex.GetBaseException().Message }"); } return(req.CreateResponse(HttpStatusCode.InternalServerError)); }
public static async void Run([EventGridTrigger] EventGridEvent eventGridEvent, TraceWriter log) { log?.Info($"Function WebhookBHandler invoked."); try { var result = await FunctionActivator.Activate <IFunction>("WebhookB") .InvokeAsync <WebhookBFunctionModel, bool>(new WebhookBFunctionModel() { EventPayload = eventGridEvent }, log).ConfigureAwait(false); } catch (Exception ex) { log?.Error($"Exception in function WebhookBHandler -> { ex.GetBaseException().Message }"); } return; }