示例#1
0
 public override void Validate()
 {
     if (this.dataObject.FileData == null)
     {
         this.dataObject.WriteError(new ArgumentException(Strings.ImportDlpPolicyFileDataIsNull), ErrorCategory.InvalidArgument, "FileData");
     }
     try
     {
         this.templates = DlpUtils.LoadDlpPolicyTemplates(this.dataObject.FileData);
     }
     catch (Exception ex)
     {
         if (!this.IsKnownException(ex))
         {
             throw;
         }
         this.dataObject.WriteError(ex, ErrorCategory.InvalidOperation, null);
     }
     using (IEnumerator <ADComplianceProgram> enumerator = DlpUtils.GetOutOfBoxDlpTemplates(base.DataSession).GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             ADComplianceProgram dlpPolicyTemplate = enumerator.Current;
             if (this.templates.Any((DlpPolicyTemplateMetaData a) => a.Name == dlpPolicyTemplate.Name))
             {
                 this.dataObject.WriteError(new ArgumentException(Strings.ErrorDlpPolicyTemplateAlreadyInstalled(dlpPolicyTemplate.Name)), ErrorCategory.InvalidArgument, "FileData");
             }
         }
     }
 }
示例#2
0
 internal DlpPolicyTemplateMetaData LoadDlpPolicyFromCustomTemplateData()
 {
     try
     {
         return(DlpUtils.LoadDlpPolicyTemplates(this.taskObject.TemplateData).FirstOrDefault <DlpPolicyTemplateMetaData>());
     }
     catch (Exception exception)
     {
         this.WriteParameterErrorIfExceptionOccurred(exception, "TemplateData");
     }
     return(null);
 }