public static AuditObject ConvertBinaryAttributes(Audit AuditRecord, AuditObject AuditDomainObject) { foreach (var binaryAuditAttribute in AuditRecord.Attribute.OfType<BinaryAttribute>()) { if (!AuditDomainObject.AuditAttributes.Keys.Contains(binaryAuditAttribute.Key)) AuditDomainObject.AuditAttributes.Add(binaryAuditAttribute.Key, new BinaryAuditAttributeObject { Value = binaryAuditAttribute.Value }); } return AuditDomainObject; }
/// <summary> /// Function to convert DataAccess File Attributes to FileAttribute /// objects and return the Domain AuditBR Object with the files attached. /// </summary> /// <param name="AuditRecord">DataAccess AuditBR object that will have the /// fileauditattributes to be converted</param> /// <param name="AuditDomainObject">The returning Auditobject with the Files attached</param> /// <returns>The returning Auditobject with the Files attached</returns> public static AuditObject ConvertFileAttributes(Audit AuditRecord, AuditObject AuditDomainObject) { foreach (var fileAttribute in AuditRecord.Attribute.OfType<FileAttribute>()) { var fileAttributeObject = new FileAuditAttributeObject { DateCreated = fileAttribute.DateCreated, DateUpdated = fileAttribute.DateUpdated, DateDeleted = fileAttribute.DateDeleted, Name = fileAttribute.FileName, Extension = fileAttribute.Extension, Value = fileAttribute.Value }; AuditDomainObject.AuditAttributes.Add(fileAttribute.Key, fileAttributeObject); } return AuditDomainObject; }
public static Audit ConvertBinaryAttributes(AuditObject AuditDomainObject, Audit AuditRecord) { foreach (var binaryObject in AuditDomainObject.AuditAttributes.Where(P => P.Value is BinaryAuditAttributeObject)) { var attribute = binaryObject.Value as BinaryAuditAttributeObject; if (attribute != null) { var binaryAttribute = new BinaryAttribute { Key = binaryObject.Key, Value = attribute.Value, DateCreated = attribute.DateCreated == DateTime.MinValue ? DateTime.Now : attribute.DateCreated, DateUpdated = attribute.DateUpdated, DateDeleted = attribute.DateDeleted, }; AuditRecord.Attribute.Add(binaryAttribute); } } return AuditRecord; }
/// <summary> /// Domain to data access converter for FileAttributes /// </summary> /// <param name="AuditDomainObject"></param> /// <param name="AuditRecord"></param> /// <returns></returns> public static Audit ConvertFileAttributes(AuditObject AuditDomainObject, Audit AuditRecord) { var recordsToDelete = new List<string>(); foreach (var attachmentObject in AuditDomainObject.AuditAttributes.Where(P => P.Value is FileAuditAttributeObject)) { var attachment = attachmentObject.Value as FileAuditAttributeObject; if (attachment != null) { var fileAttribute = new FileAttribute { Key = attachmentObject.Key, DateCreated = attachment.DateCreated == DateTime.MinValue ? DateTime.Now : attachment.DateCreated, DateDeleted = attachment.DateDeleted, DateUpdated = attachment.DateUpdated, FileName = attachment.Name, Extension = attachment.Extension, Value = attachment.Value }; AuditRecord.Attribute.Add(fileAttribute); } recordsToDelete.Add(attachmentObject.Key); } recordsToDelete.ForEach(I => AuditDomainObject.AuditAttributes.Remove(I)); return AuditRecord; }
private static Audit Convert(AuditObject AuditRecord, AuditEntities Ctx) { var audit = new Audit { DateCreated = AuditRecord.DateCreated, Application = string.IsNullOrEmpty(AuditRecord.Application) ? "UNKNOWN" : AuditRecord.Application }; var level = GetLevel(AuditRecord.Level, Ctx); if (level != null) { audit.AuditLevel = level; } else { throw new InvalidLevelException(string.Format("Audit Level {0} does not exist", AuditRecord.Level)); } var organisation = GetOrganisation(AuditRecord.Organisation.Id, Ctx); if (organisation != null) { audit.Organisation = organisation; } else { throw new InvalidOrganisationException(string.Format("Organisation {0} does not exist", AuditRecord.Organisation.Id)); } audit = ConvertFileAttributes(AuditRecord, audit); audit = ConvertStringAttributes(AuditRecord, audit); audit = ConvertBinaryAttributes(AuditRecord, audit); audit = ConvertTagAttributes(AuditRecord, audit, Ctx); return audit; }
private static AuditObject Convert(Audit AuditRecord) { var auditObject = new AuditObject { DateCreated = AuditRecord.DateCreated, Level = AuditRecord.AuditLevel.Id, Application = AuditRecord.Application }; auditObject = ConvertFileAttributes(AuditRecord, auditObject); auditObject = ConvertTagAttributes(AuditRecord, auditObject); auditObject = ConvertBinaryAttributes(AuditRecord, auditObject); auditObject = ConvertStringAttributes(AuditRecord, auditObject); auditObject = ConvertOrganisation(AuditRecord, auditObject); return auditObject; }
/// <summary> /// Convert the Tags from domain object to data object. If the tag /// already exists in the database the tag will be attached to the /// existing record stopping duplicates being created. /// </summary> /// <param name="AuditDomainObject">Domain object with any tags associated.</param> /// <param name="AuditRecord">Audit data record where the tags need to /// be attached if they already exist and added if they do not.</param> /// <param name="Ctx">Context to manage the tags being attached or added.</param> /// <returns></returns> public static Audit ConvertTagAttributes(AuditObject AuditDomainObject, Audit AuditRecord, AuditEntities Ctx) { foreach (var tagObject in AuditDomainObject.Tags) { Tag tag = GetTag(tagObject, Ctx); if (tag != null) AuditRecord.Tag.Add(tag); else { var tagAttribute = new Tag { TagName = tagObject, DateCreated = DateTime.Now }; AuditRecord.Tag.Add(tagAttribute); } } return AuditRecord; }
/// <summary> /// Domain to data access converter for FileAttributes /// </summary> /// <param name="AuditDomainObject"></param> /// <param name="AuditRecord"></param> /// <returns></returns> public static Audit ConvertStringAttributes(AuditObject AuditDomainObject, Audit AuditRecord) { foreach (var stringObject in AuditDomainObject.AuditAttributes.Where(P => P.Value is StringAuditAttributeObject)) { var attribute = stringObject.Value as StringAuditAttributeObject; if (attribute != null) { var stringAttribute = new StringAttribute { Key = stringObject.Key, Value = attribute.Value, DateCreated = attribute.DateCreated == DateTime.MinValue ? DateTime.Now : attribute.DateCreated }; AuditRecord.Attribute.Add(stringAttribute); } } return AuditRecord; }
/// <summary> /// Create a new Audit object. /// </summary> /// <param name="id">Initial value of the Id property.</param> /// <param name="dateCreated">Initial value of the DateCreated property.</param> public static Audit CreateAudit(global::System.Int32 id, global::System.DateTime dateCreated) { Audit audit = new Audit(); audit.Id = id; audit.DateCreated = dateCreated; return audit; }