public override void ProcessRecord() { try { DlpUtils.DeleteEtrsByDlpPolicy(this.taskObject.GetDataObject().ImmutableId, base.DataSession); } catch (ParserException ex) { this.taskObject.WriteError(new ArgumentException(Strings.RemoveDlpPolicyCorruptRule(this.taskObject.Identity.ToString(), ex.Message)), ErrorCategory.ParserError, this.taskObject.Identity); } base.DataSession.Delete(this.taskObject.GetDataObject()); }
private static void HandleScriptExecutionError(ADComplianceProgram adDlpPolicy, IConfigDataProvider dataSession, Exception e) { DlpUtils.DeleteEtrsByDlpPolicy(adDlpPolicy.ImmutableId, dataSession); dataSession.Delete(adDlpPolicy); throw new DlpPolicyScriptExecutionException(e.Message); }