// Token: 0x06001095 RID: 4245 RVA: 0x00061458 File Offset: 0x0005F658 protected override DirectoryProcessorBaseTaskContext DoChunkWork(DirectoryProcessorBaseTaskContext context, RecipientType recipientType) { base.Logger.TraceDebug(this, "Entering GroupMetricsGenerator.DoChunkWork recipientType='{0}' at {1}", new object[] { recipientType.ToString(), DateTime.UtcNow.ToString("o") }); if ((context.TaskStatus & TaskStatus.DLADCrawlerFailed) != TaskStatus.NoError) { GroupMetricsGenerator.EventLogger.LogEvent(InfoWorkerEventLogConstants.Tuple_GroupMetricsGenerationSkippedNoADFile, null, new object[] { base.RunData.TenantId, base.RunData.RunId, recipientType }); return(null); } GroupMetricsGeneratorTaskContext groupMetricsGeneratorTaskContext = context as GroupMetricsGeneratorTaskContext; if (groupMetricsGeneratorTaskContext == null) { groupMetricsGeneratorTaskContext = new GroupMetricsGeneratorTaskContext(context.MailboxData, context.Job, context.TaskQueue, context.Step, context.TaskStatus, context.RunData, context.DeferredFinalizeTasks); this.Initialize(recipientType); base.Logger.TraceDebug(this, "First time GroupMetricsGenerator.DoChunkWork is called.", new object[0]); } this.syncType = this.UpdateGroupMetrics(groupMetricsGeneratorTaskContext); if (GroupMetricsSyncType.Failed == this.syncType || groupMetricsGeneratorTaskContext.AllChunksFinished) { return(null); } return(groupMetricsGeneratorTaskContext); }
// Token: 0x0600112B RID: 4395 RVA: 0x00063B54 File Offset: 0x00061D54 public override void FinalizeMe(DirectoryProcessorBaseTaskContext taskContext) { base.Logger.TraceDebug(null, "Entering GrammarGenerator.FinalizeMe", new object[0]); if (this.NoError) { List <GrammarFileMetadata> grammarFileMetadata = this.GetGrammarFileMetadata(); this.WriteGrammarGenerationManifest(grammarFileMetadata); UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_GrammarGenerationSuccessful, null, new object[] { base.RunData.TenantId, base.RunData.RunId }); this.SetUMGrammarReadyFlag(); } else { UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_GrammarGenerationFailed, null, new object[] { base.RunData.TenantId, base.RunData.RunId, CommonUtil.ToEventLogString(this.exception) }); } base.FinalizeMe(taskContext); base.Logger.TraceDebug(null, "Exiting GrammarGenerator.FinalizeMe", new object[0]); }
// Token: 0x0600112E RID: 4398 RVA: 0x00063CFC File Offset: 0x00061EFC protected override DirectoryProcessorBaseTaskContext DoChunkWork(DirectoryProcessorBaseTaskContext context, RecipientType recipientType) { ValidateArgument.NotNull(context, "context"); base.Logger.TraceDebug(this, "Entering GrammarGenerator.DoChunkWork recipientType='{0}'", new object[] { recipientType }); if ((RecipientType.Group == recipientType && (context.TaskStatus & TaskStatus.DLADCrawlerFailed) != TaskStatus.NoError) || (RecipientType.User == recipientType && (context.TaskStatus & TaskStatus.UserADCrawlerFailed) != TaskStatus.NoError)) { UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_GrammarGenerationSkippedNoADFile, null, new object[] { base.TenantId, base.RunId, recipientType }); this.exception = new GrammarGeneratorADException(); return(null); } if (!this.NoError) { base.Logger.TraceDebug(this, "GrammarGenerator.DoChunkWork - Skipping rest of grammar generation because of previous error='{0}'", new object[] { this.exception }); return(null); } GrammarGeneratorTaskContext grammarGeneratorTaskContext = context as GrammarGeneratorTaskContext; if (grammarGeneratorTaskContext == null) { base.Logger.TraceDebug(this, "First time GrammarGenerator.DoChunkWork is called", new object[0]); grammarGeneratorTaskContext = this.InitializeTask(recipientType, context); } DirectoryProcessorBaseTaskContext result = null; CultureInfo nextCultureToProcess = grammarGeneratorTaskContext.GetNextCultureToProcess(); if (nextCultureToProcess != null) { base.Logger.TraceDebug(this, "GrammarGenerator.DoChunkWork - Processing culture='{0}'", new object[] { nextCultureToProcess }); base.Logger.SetMetadataValues(this, recipientType, nextCultureToProcess.Name); this.GenerateGrammar(nextCultureToProcess, grammarGeneratorTaskContext.GrammarGeneratorInstance); result = grammarGeneratorTaskContext; } else if (this.DoBulkUpload) { base.Logger.TraceDebug(this, "GrammarGenerator.DoChunkWork - Do bulk upload", new object[0]); this.UploadResults(null); } return(result); }
// Token: 0x06001058 RID: 4184 RVA: 0x0005F290 File Offset: 0x0005D490 protected override DirectoryProcessorBaseTaskContext DoChunkWork(DirectoryProcessorBaseTaskContext context, RecipientType recipientType) { ValidateArgument.NotNull(context, "context"); base.Logger.TraceDebug(this, "Entering DtmfMapGenerator.DoChunkWork recipientType='{0}'", new object[] { recipientType }); if ((RecipientType.Group == recipientType && (context.TaskStatus & TaskStatus.DLADCrawlerFailed) != TaskStatus.NoError) || (RecipientType.User == recipientType && (context.TaskStatus & TaskStatus.UserADCrawlerFailed) != TaskStatus.NoError)) { UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_DtmfMapGenerationSkippedNoADFile, null, new object[] { base.TenantId, base.RunId, recipientType }); return(null); } DtmfMapGeneratorTaskContext dtmfMapGeneratorTaskContext = context as DtmfMapGeneratorTaskContext; if (dtmfMapGeneratorTaskContext == null) { base.Logger.TraceDebug(this, "First time DtmfMapGenerator.DoChunkWork is called", new object[0]); dtmfMapGeneratorTaskContext = this.InitializeTask(recipientType, context); } DtmfMapGeneratorTaskContext dtmfMapGeneratorTaskContext2 = dtmfMapGeneratorTaskContext; try { if (this.ProcessNextChunk(dtmfMapGeneratorTaskContext)) { this.LogCompletion(dtmfMapGeneratorTaskContext, recipientType); dtmfMapGeneratorTaskContext2 = null; } } catch (Exception) { dtmfMapGeneratorTaskContext2 = null; throw; } finally { if (dtmfMapGeneratorTaskContext2 == null) { dtmfMapGeneratorTaskContext.Dispose(); } } return(dtmfMapGeneratorTaskContext2); }
// Token: 0x06001082 RID: 4226 RVA: 0x00060070 File Offset: 0x0005E270 public override void FinalizeMe(DirectoryProcessorBaseTaskContext taskContext) { base.Logger.TraceDebug(null, "Entering GroupMetricsGenerator.FinalizeMe at {0}, LastSyncType={1}", new object[] { DateTime.UtcNow.ToString("o"), this.lastSyncType }); if (this.exception == null) { if (this.lastSyncType == GroupMetricsSyncType.Full || this.lastSyncType == GroupMetricsSyncType.Delta) { this.SaveCookies(this.updatedCookies); } DateTime utcNow = DateTime.UtcNow; TimeSpan timeSpan = utcNow - this.taskStartTime; GroupMetricsGenerator.EventLogger.LogEvent(InfoWorkerEventLogConstants.Tuple_GroupMetricsGenerationSuccessful, null, new object[] { base.RunData.TenantId, base.RunData.RunId, timeSpan, this.groupsExpanded, this.syncType }); } else { GroupMetricsGenerator.EventLogger.LogEvent(InfoWorkerEventLogConstants.Tuple_GroupMetricsGenerationFailed, null, new object[] { base.RunData.TenantId, base.RunData.RunId, CommonUtil.ToEventLogString(this.exception) }); } base.FinalizeMe(taskContext); base.Logger.TraceDebug(null, "Exiting GroupMetricsGenerator.FinalizeMe at {0}", new object[] { DateTime.UtcNow.ToString("o") }); }
// Token: 0x0600112F RID: 4399 RVA: 0x00063E70 File Offset: 0x00062070 private GrammarGeneratorTaskContext InitializeTask(RecipientType recipientType, DirectoryProcessorBaseTaskContext context) { base.Logger.TraceDebug(this, "Entering GrammarGenerator.InitializeTask recipientType='{0}'", new object[] { recipientType }); UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_GrammarGenerationStarted, null, new object[] { base.TenantId, base.RunId, recipientType.ToString() }); GrammarFileDistributionShare.CreateDirectoryProcessorFolder(); IGrammarGeneratorInterface grammarGeneratorInstance = null; if (recipientType != RecipientType.User) { if (recipientType != RecipientType.Group) { ExAssert.RetailAssert(false, "Unsupported recipient type"); } else { grammarGeneratorInstance = new DLGrammarGenerator(base.Logger); } } else { grammarGeneratorInstance = new UserGrammarGenerator(base.Logger, base.OrgId); } CultureInfo[] grammarCultures = UMGrammarTenantCache.Instance.GetGrammarCultures(); return(new GrammarGeneratorTaskContext(context.MailboxData, context.Job, context.TaskQueue, context.Step, context.TaskStatus, grammarGeneratorInstance, grammarCultures, base.Logger, context.RunData, context.DeferredFinalizeTasks)); }
// Token: 0x06001059 RID: 4185 RVA: 0x0005F390 File Offset: 0x0005D590 private DtmfMapGeneratorTaskContext InitializeTask(RecipientType recipientType, DirectoryProcessorBaseTaskContext context) { base.Logger.TraceDebug(null, "Entering DtmfMapGenerator.InitializeTask recipientType='{0}'", new object[] { recipientType }); string text = null; if (recipientType != RecipientType.User) { if (recipientType != RecipientType.Group) { ExAssert.RetailAssert(false, "Unsupported recipient type"); } else { text = "DistributionList"; } } else { text = "User"; } string entriesFilePath = ADCrawler.GetEntriesFilePath(base.RunData.RunFolderPath, text); base.Logger.TraceDebug(null, "DtmfMapGenerator.InitializeTask adEntriesFileName='{0}', entriesFilePath='{1}'", new object[] { text, entriesFilePath }); XmlReader adEntriesReader = XmlReader.Create(entriesFilePath); DtmfMapGenerationMetadata metadata = this.GetMetadata(recipientType); DtmfMapGeneratorTaskContext dtmfMapGeneratorTaskContext = new DtmfMapGeneratorTaskContext(context.MailboxData, context.Job, context.TaskQueue, context.Step, context.TaskStatus, adEntriesReader, metadata, this.IsFullUpdateRequired(metadata), context.RunData, context.DeferredFinalizeTasks); UmGlobals.ExEvent.LogEvent(UMEventLogConstants.Tuple_DtmfMapGenerationStarted, null, new object[] { base.TenantId, base.RunId, recipientType.ToString(), dtmfMapGeneratorTaskContext.IsFullUpdate }); return(dtmfMapGeneratorTaskContext); }