/// <summary> /// Creates a simple string that lists the resource's name and path information. /// </summary> private static string CreateResourceInfoString <T>(IVirtualResourceItem <T> item) where T : VirtualResourceInfo { const string msg = "Processed resource: [{0}]\nPublic path: [{1}]\nInternal qualified path: [{2}]"; return(String.Format(msg, item.ResourceInfo.Name, item.ResourceInfo.FullName, item.QualifiedIdentifier)); }
/// <summary> /// Audits a successful file system operation that occurred in the context of a given transfer. /// </summary> public static void AuditTransferOperation <T>(IAuditor auditor, FileSystemTask context, AuditEvent eventId, string transferId, IVirtualResourceItem <T> resource) where T : VirtualResourceInfo { if (!AuditHelper.IsInfoEnabledFor(auditor, context)) { return; } string msg = "Successfully performed file system operation [{0}] during transfer [{1}] for resource [{2}].\n\n{3}"; msg = String.Format(msg, context, transferId, resource.ResourceInfo.Name, AuditHelper.CreateResourceInfoString(resource)); auditor.Audit(AuditLevel.Info, context, eventId, msg); }
/// <summary> /// Audits a file system operation that was blocked as a warning. /// </summary> public static void AuditDeniedOperation <T>(IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> resource, string message) where T : VirtualResourceInfo { if (!AuditHelper.IsWarnEnabledFor(auditor, context)) { return; } string msg = String.Format("Blocked operation '{0}' due to event '{1}'.", context, eventId); if (!String.IsNullOrEmpty(message)) { msg = String.Format("{0}\n{1}", msg, message); } msg = String.Format("{0}\n\n{1}", msg, AuditHelper.CreateResourceInfoString(resource)); auditor.Audit(AuditLevel.Warning, context, eventId, msg); }
/// <summary> /// Audits a file system operation that was blocked as a warning. /// </summary> public static void AuditDeniedOperation <T>(IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> resource) where T : VirtualResourceInfo { AuditDeniedOperation(auditor, context, eventId, resource, null); }
/// <summary> /// Audits a successful file system operation that involves a source and a target resource (move / copy). /// </summary> public static void AuditResourceOperation <T>(IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> sourceFolder, IVirtualResourceItem <T> targetFolder) where T : VirtualResourceInfo { if (!AuditHelper.IsInfoEnabledFor(auditor, context)) { return; } string msg = String.Format("Successfully performed file system operation '{0}'.\n\nSource:\n{1}\n\nTarget:\n{2}", context, AuditHelper.CreateResourceInfoString(sourceFolder), AuditHelper.CreateResourceInfoString(targetFolder)); auditor.Audit(AuditLevel.Info, context, eventId, msg); }
/// <summary> /// Audits a successful file system operation for a given resource. /// </summary> public static void AuditResourceOperation <T>(IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> resource, string message) where T : VirtualResourceInfo { if (!AuditHelper.IsInfoEnabledFor(auditor, context)) { return; } string msg = String.Format("Successfully performed file system operation '{0}' for resource [{1}].\n\n{2}", context, resource.ResourceInfo.Name, AuditHelper.CreateResourceInfoString(resource)); if (!String.IsNullOrEmpty(message)) { msg = String.Format("{0}\n{1}", msg, message); } auditor.Audit(AuditLevel.Info, context, eventId, msg); }
/// <summary> /// Audits a successful file system operation for a given resource. /// </summary> public static void AuditResourceOperation <T>(this IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> resource) where T : VirtualResourceInfo { if (!auditor.IsInfoEnabledFor(context)) { return; } string msg = String.Format("Successfully performed file system operation '{0}' for resource [{1}].\n\n{2}", context, resource.ResourceInfo.Name, resource.CreateResourceInfoString()); auditor.Audit(AuditLevel.Info, context, eventId, msg); }