예제 #1
0
 public override ObjectAuditProcessor CreateAuditProcessor(ObjectAuditingMode mode, Session session, AuditTrailSettings settings) {
     var auditTrailSettings = new AuditTrailSettings();
     auditTrailSettings.SetXPDictionary(XpandModuleBase.Dictiorary);
     foreach (var auditTrailClassInfo in settings.TypesToAudit) {
         var auditTrailMemberInfos = auditTrailClassInfo.Properties;
         auditTrailSettings.AddType(auditTrailClassInfo.ClassInfo.ClassType, auditTrailMemberInfos.Select(info => info.Name).ToArray());
     }
     return mode == (ObjectAuditingMode)Logic.ObjectAuditingMode.None ? new NoAuditProccesor(session, auditTrailSettings) : base.CreateAuditProcessor(mode, session, auditTrailSettings);
 }
예제 #2
0
        public override ObjectAuditProcessor CreateAuditProcessor(ObjectAuditingMode mode, Session session, AuditTrailSettings settings)
        {
            var auditTrailSettings = new AuditTrailSettings();

            auditTrailSettings.SetXPDictionary(XpandModuleBase.Dictiorary);
            foreach (var auditTrailClassInfo in settings.TypesToAudit)
            {
                var auditTrailMemberInfos = auditTrailClassInfo.Properties;
                auditTrailSettings.AddType(auditTrailClassInfo.ClassInfo.ClassType, auditTrailMemberInfos.Select(info => info.Name).ToArray());
            }
            return(mode == (ObjectAuditingMode)Logic.ObjectAuditingMode.None ? new NoAuditProccesor(session, auditTrailSettings) : base.CreateAuditProcessor(mode, session, auditTrailSettings));
        }
예제 #3
0
        public override ObjectAuditProcessor CreateAuditProcessor(ObjectAuditingMode mode, Session session, AuditTrailSettings settings)
        {
            var auditTrailSettings = new AuditTrailSettings();

            auditTrailSettings.SetXPDictionary(XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary);
            foreach (var auditTrailClassInfo in settings.TypesToAudit)
            {
                var auditTrailMemberInfos = auditTrailClassInfo.Properties;
                if (!(auditTrailClassInfo.ClassInfo is IntermediateClassInfo))
                {
                    auditTrailSettings.AddType(auditTrailClassInfo.ClassInfo.ClassType, auditTrailMemberInfos.Select(info => info.Name).ToArray());
                }
            }
            return(mode == (ObjectAuditingMode)Persistent.Base.AuditTrail.ObjectAuditingMode.None ? new NoAuditProccesor(session, auditTrailSettings) : base.CreateAuditProcessor(mode, session, auditTrailSettings));
        }
예제 #4
0
 public static void Exclude(AuditTrailSettings audiTrailSettings)
 {
     foreach (ITypeInfo typeInfo in XafTypesInfo.Instance.PersistentTypes)
     {
         foreach (IMemberInfo member in typeInfo.Members)
         {
             ExcludeFromAuditTrailAttribute attribute = member.FindAttribute <ExcludeFromAuditTrailAttribute>();
             if (attribute != null)
             {
                 Type type = member.Owner?.Type;
                 if (type != null && !string.IsNullOrEmpty(member.Name))
                 {
                     audiTrailSettings.RemoveProperties(type, member.Name);
                 }
             }
         }
     }
 }
예제 #5
0
 public NoAuditProccesor(Session session, AuditTrailSettings settings)
     : base(session, settings) {
 }
예제 #6
0
 public NoAuditProccesor(Session session, AuditTrailSettings settings)
     : base(session, settings)
 {
 }