internal LtrObject(IIdentityObject obj) { Guard.NotNull(obj, nameof(obj)); this.ObjectId = obj.Id; this.LogObjectClass = obj.GetType().FullName; this.Properties = new List <LtrObjectProperties>(); }
public void ShouldCreateLtrObject(IIdentityObject obj) { // Arrange & Act var sut = new LtrObject(obj); // Assert Assert.Equal(obj.Id, sut.ObjectId); Assert.Equal(obj.GetType().FullName, sut.LogObjectClass); }
public void AddObject(IIdentityObject obj, ChangeType changeType) { Guard.NotNull(obj, nameof(obj)); var ltrObject = this.Objects.FirstOrDefault(o => o.ObjectId.Equals(obj.Id)); if (ltrObject != null) { throw new ArgumentException($"Object Id={obj.Id} already added. ChangeType={ltrObject.ChangeType}", nameof(obj)); } ltrObject = new LtrObject(obj) { ChangeType = changeType, }; ltrObject.SetValues(obj); this.Objects.Add(ltrObject); }