// Token: 0x060011D2 RID: 4562 RVA: 0x00067D78 File Offset: 0x00065F78 protected List <MailboxData> GetReadyToExecuteJobs(IntegrityCheckQueryFlags flags) { List <MailboxData> list = new List <MailboxData>(10); PropValue[][] rows = null; try { TimeBasedAssistant.TrackAdminRpcCalls(base.DatabaseInfo, "Client=Maintenance", delegate(ExRpcAdmin rpcAdmin) { rows = rpcAdmin.StoreIntegrityCheckEx(this.DatabaseInfo.Guid, Guid.Empty, Guid.Empty, 2U, (uint)flags, null, StoreIntegrityCheckAssistantBase.columnsToRequest); }); } catch (MapiRetryableException innerException) { throw new SkipException(innerException); } catch (MapiPermanentException innerException2) { throw new SkipException(innerException2); } if (rows != null) { foreach (PropValue[] array in rows) { list.Add(new StoreIntegrityCheckAssistantBase.StoreIntegrityCheckJob(base.DatabaseInfo.Guid, array[0].GetInt(), array[1].GetGuid(), array[2].GetGuid())); } } return(list); }
// Token: 0x060011B3 RID: 4531 RVA: 0x000679D8 File Offset: 0x00065BD8 protected List <MailboxData> GetMailboxesToProcess(MailboxTableFlags mailboxTableFlags) { List <MailboxData> list = new List <MailboxData>(10); PropValue[][] rows = null; try { TimeBasedAssistant.TrackAdminRpcCalls(base.DatabaseInfo, "Client=Maintenance", delegate(ExRpcAdmin rpcAdmin) { rows = rpcAdmin.GetMailboxTableInfo(this.DatabaseInfo.Guid, Guid.Empty, mailboxTableFlags, StoreMaintenanceAssistant.columnsToRequest); }); } catch (MapiRetryableException innerException) { throw new SkipException(innerException); } catch (MapiPermanentException innerException2) { throw new SkipException(innerException2); } if (rows != null) { foreach (PropValue[] array in rows) { list.Add(new StoreMaintenanceAssistant.MaintenanceMailboxData(array[0].GetGuid(), base.DatabaseInfo.Guid, array[1].GetInt(), array[2].GetGuid())); } } return(list); }
// Token: 0x060011B2 RID: 4530 RVA: 0x0006791C File Offset: 0x00065B1C protected override void InvokeInternal(InvokeArgs invokeArgs, List <KeyValuePair <string, object> > customDataToLog) { StoreMaintenanceAssistant.MaintenanceMailboxData maintenanceMailboxData = invokeArgs.MailboxData as StoreMaintenanceAssistant.MaintenanceMailboxData; try { TimeBasedAssistant.TrackAdminRpcCalls(base.DatabaseInfo, "Client=Maintenance", delegate(ExRpcAdmin rpcAdmin) { rpcAdmin.ExecuteTask(this.DatabaseInfo.Guid, maintenanceMailboxData.MaintenanceId, maintenanceMailboxData.MailboxNumber); if (maintenanceMailboxData.MailboxNumber == 0) { customDataToLog.Add(new KeyValuePair <string, object>("DatabaseMaintenance", maintenanceMailboxData.MaintenanceId.ToString())); return; } customDataToLog.Add(new KeyValuePair <string, object>("MailboxMaintenance", maintenanceMailboxData.MaintenanceId.ToString())); customDataToLog.Add(new KeyValuePair <string, object>("Mailbox", maintenanceMailboxData.MailboxGuid.ToString())); }); } catch (MapiRetryableException innerException) { throw new SkipException(innerException); } catch (MapiPermanentException innerException2) { throw new SkipException(innerException2); } }
// Token: 0x060011D1 RID: 4561 RVA: 0x00067CAC File Offset: 0x00065EAC protected override void InvokeInternal(InvokeArgs invokeArgs, List <KeyValuePair <string, object> > customDataToLog) { StoreIntegrityCheckAssistantBase.StoreIntegrityCheckJob job = invokeArgs.MailboxData as StoreIntegrityCheckAssistantBase.StoreIntegrityCheckJob; try { TimeBasedAssistant.TrackAdminRpcCalls(base.DatabaseInfo, "Client=Maintenance", delegate(ExRpcAdmin rpcAdmin) { rpcAdmin.StoreIntegrityCheckEx(this.DatabaseInfo.Guid, job.MailboxGuid, job.JobGuid, 6U, (uint)this.ExecutionFlags, null, null); customDataToLog.Add(new KeyValuePair <string, object>("StoreIntegrityCheck", job.JobGuid.ToString())); }); } catch (MapiRetryableException innerException) { throw new SkipException(innerException); } catch (MapiPermanentException innerException2) { throw new SkipException(innerException2); } }
// Token: 0x06000FD2 RID: 4050 RVA: 0x0005D6C0 File Offset: 0x0005B8C0 private StoreStatistics GetStoreStatistics(DatabaseInfo databaseInfo, Guid mailboxGuid) { StoreStatistics result = null; TimeBasedAssistant.TrackAdminRpcCalls(databaseInfo, "Client=TBA", delegate(ExRpcAdmin admin) { PropValue[][] mailboxTableInfo = admin.GetMailboxTableInfo(databaseInfo.Guid, mailboxGuid, SearchIndexRepairAssistant.StorePropTags); if (mailboxTableInfo.Length != 1) { throw new AssistantException(Strings.IndexRepairUnexpectedRpcResultLength(mailboxTableInfo.Length)); } if (mailboxTableInfo[0].Length != SearchIndexRepairAssistant.StorePropTags.Length) { throw new AssistantException(Strings.IndexRepairUnexpectedRpcResultRowLength(mailboxTableInfo[0].Length)); } int @int = mailboxTableInfo[0][0].GetInt(); int int2 = mailboxTableInfo[0][1].GetInt(); result = new StoreStatistics((long)@int, (long)int2); }); return(result); }