using System; using System.Collections.Generic; using Kreta.Web.Logging.Logger; using Kreta.Web.Security; namespace Kreta.Web.Logger { /// /// Logging field renderer /// class RequestUserRenderer : LoggingFieldRenderer { /// /// Render /// /// Field /// Context public override void Render(string fieldName, LoggingFieldRendererContext context) { if (string.Compare(RequestResponseLoggingFields.Request.User, fieldName, StringComparison.OrdinalIgnoreCase) != 0) { return; } string user = context.GetFieldValue(fieldName) as string; if (!string.IsNullOrWhiteSpace(user)) { try { List roles = ClaimData.FelhasznaloSzerepCsomagok; if (roles != null && roles.Count > 0) { context.SetFieldValue(fieldName, $"{user}/[{string.Join(",", roles)}]"); } } catch (Exception ex) { context.SetFieldValue(fieldName, ex.ToString()); } } } } }