public XPCollection <AuditDataItemPersistent> GetAuditInfo(Session session, Type targetType) { AuditedObjectWeakReference auditObjectWeakReference = session.FindObject <AuditedObjectWeakReference>( new BinaryOperator("TargetType", session.GetObjectType(session.GetClassInfo(targetType))) ); if (auditObjectWeakReference != null) { auditObjectWeakReference.AuditDataItems.BindingBehavior = CollectionBindingBehavior.AllowNone; return(auditObjectWeakReference.AuditDataItems); } return(null); }
private void UndeleteObject(object obj) { if (obj == null || RestoredObjects.Contains(obj)) { return; } ITypeInfo objinfo = XafTypesInfo.Instance.FindTypeInfo(obj.GetType()); UndeleteObjectCore(obj, objinfo); XPCollection <AuditDataItemPersistent> originalcollection = AuditedObjectWeakReference.GetAuditTrail((ObjectSpace as XPObjectSpace).Session, obj); if (originalcollection != null) { XPCollection <AuditDataItemPersistent> oldobjaudit = new XPCollection <AuditDataItemPersistent>(originalcollection, new BinaryOperator("OperationType", "ObjectDeleted")); if (oldobjaudit.Count > 0) { RestoreObject(oldobjaudit.OrderByDescending(x => x.ModifiedOn).First()); } } }
public AuditTrailDetails(Session session, object audit) { _name = String.Format("Audit trail for {0}", CaptionHelper.GetClassCaption(audit.GetType().FullName)); AuditTrail = AuditedObjectWeakReference.GetAuditTrail(session, audit); }
public AuditTrailDetails(Session session, object audit) { AuditTrail = AuditedObjectWeakReference.GetAuditTrail(session, audit); }