public async Task ScheduleTask()

in Facebook/WebApp/Controllers/DataIngestionController.cs [37:73]


        public async Task<HttpResponseMessage> ScheduleTask([FromBody] ScheduleTaskRequest request)
        {
            Trace.TraceInformation($"Request came to Web for JobId: {request.JobId} and TaskId: {request.TaskId}");

            if (string.IsNullOrEmpty(Settings.AAdAppId) || string.IsNullOrEmpty(Settings.AAdAppSecret))
            {
                Trace.TraceError($"AAD Settings missing. Request failed for JobId: {request.JobId} and TaskId: {request.TaskId}.");
                return new HttpResponseMessage(HttpStatusCode.ExpectationFailed)
                {
                    Content = new StringContent("Connector is not configured. AAD Settings missing.")
                };
            }

            PageJobEntity entity = await GetJobIdFromTable(request.JobId);
            if (entity == null)
            {
                Trace.TraceError($"Failed to find job in the table. Request failed for JobId: {request.JobId} and TaskId: {request.TaskId}.");
                return new HttpResponseMessage(HttpStatusCode.NotFound)
                {
                    Content = new StringContent("Failed to find job in the table")
                };
            }
            else
            {
                await queueProvider.InsertMessageAsync(JsonConvert.SerializeObject(new ConnectorTask
                {
                    TenantId = Settings.TenantId,
                    JobId = request.JobId,
                    TaskId = request.TaskId,
                    StartTime = request.StartTime,
                    EndTime = request.EndTime,
                    DirtyEntities = request.DirtyEntities,
                    BlobSasUri = request.BlobSasUri
                }));
                return new HttpResponseMessage(HttpStatusCode.OK);
            }
        }