// Token: 0x06000038 RID: 56 RVA: 0x00002D10 File Offset: 0x00000F10 protected RetrievedPayload RetrieveJobDistributionPayload(OrganizationId organizationId, Guid jobRunId, int taskId) { RetrievedPayload retrievedPayload = new RetrievedPayload(); ComplianceJobProvider complianceJobProvider = new ComplianceJobProvider(organizationId); Guid tenantGuid = organizationId.GetTenantGuid(); retrievedPayload.IsComplete = this.HasMoreTasks(organizationId, jobRunId); IEnumerable <CompositeTask> enumerable = from x in complianceJobProvider.FindCompositeTasks(tenantGuid, jobRunId, null, null) where x.TaskId > taskId select x; if (enumerable != null) { foreach (CompositeTask compositeTask in enumerable) { JobPayload jobPayload = new JobPayload(); jobPayload.Target = new Target { TargetType = Target.Type.MailboxSmtpAddress, Identifier = compositeTask.UserMaster }; PayloadReference payloadReference = PayloadHelper.GetPayloadReference(jobRunId, compositeTask.TaskId); jobPayload.Children.Add(ComplianceSerializer.Serialize <PayloadReference>(PayloadReference.Description, payloadReference)); retrievedPayload.Children.Add(jobPayload); retrievedPayload.Bookmark = compositeTask.TaskId.ToString(); } return(retrievedPayload); } throw new ArgumentException(string.Format("Not Task Data Found. TenantId-{0} JobId-{1} and TaskId-{2}", tenantGuid, jobRunId, taskId)); }
// Token: 0x06000037 RID: 55 RVA: 0x00002BD0 File Offset: 0x00000DD0 public override ComplianceMessage Process(ComplianceMessage input) { ComplianceMessage complianceMessage = new ComplianceMessage { CorrelationId = input.CorrelationId, TenantId = input.TenantId, MessageId = default(Guid).ToString() }; FaultDefinition faultDefinition = null; RetrievedPayload payload = new RetrievedPayload(); PayloadReference payloadReference; if (!ComplianceSerializer.TryDeserialize <PayloadReference>(PayloadReference.Description, input.Payload, out payloadReference, out faultDefinition, "Process", "f:\\15.00.1497\\sources\\dev\\EDiscovery\\src\\TaskDistributionSystem\\TaskDistributionFabric\\Blocks\\RetrievePayloadBlock.cs", 43)) { throw new BadStructureFormatException(string.Format("Problem in deserializing the payload reference:{0}", input.ComplianceMessageType)); } OrganizationId organizationId; if (!OrganizationId.TryCreateFromBytes(input.TenantId, Encoding.UTF8, out organizationId)) { throw new ArgumentException(string.Format("Problem in creating Organization Id from the tenant id:{0}", input.ComplianceMessageType)); } Guid jobRunId; int taskId; PayloadLevel payloadLevel; if (PayloadHelper.TryReadFromPayloadReference(payloadReference, out jobRunId, out taskId, out payloadLevel)) { switch (payloadLevel) { case PayloadLevel.Job: { int taskId2; if (!int.TryParse(payloadReference.Bookmark, out taskId2)) { taskId2 = -1; } payload = this.RetrieveJobDistributionPayload(organizationId, jobRunId, taskId2); break; } case PayloadLevel.Task: payload = this.RetrieveTaskDistributionPayload(organizationId, jobRunId, taskId); break; } } complianceMessage.Payload = payload; return(complianceMessage); }
// Token: 0x06000039 RID: 57 RVA: 0x00002E68 File Offset: 0x00001068 protected RetrievedPayload RetrieveTaskDistributionPayload(OrganizationId organizationId, Guid jobRunId, int taskId) { RetrievedPayload retrievedPayload = new RetrievedPayload(); ComplianceJobProvider complianceJobProvider = new ComplianceJobProvider(organizationId); Guid tenantGuid = organizationId.GetTenantGuid(); CompositeTask compositeTask = complianceJobProvider.FindCompositeTasks(tenantGuid, jobRunId, null, new int?(taskId)).SingleOrDefault <CompositeTask>(); if (compositeTask != null) { foreach (string identifier in compositeTask.Users) { JobPayload jobPayload = new JobPayload(); jobPayload.Target = new Target { TargetType = Target.Type.MailboxSmtpAddress, Identifier = identifier }; retrievedPayload.Children.Add(jobPayload); } return(retrievedPayload); } throw new ArgumentException(string.Format("No Task data found. TenantId-{0} JobId-{1} and TaskId-{2}", tenantGuid, jobRunId, taskId)); }