From: Richard B. <rb...@us...> - 2004-12-21 21:57:21
|
Update of /cvsroot/jcframework/dotnet In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28770 Modified Files: CPersistenceBroker.vb CPersistentCollection.vb Log Message: Added new events to CPersistentCollection when an object is inserted or removed Index: CPersistenceBroker.vb =================================================================== RCS file: /cvsroot/jcframework/dotnet/CPersistenceBroker.vb,v retrieving revision 1.85 retrieving revision 1.86 diff -u -d -r1.85 -r1.86 --- CPersistenceBroker.vb 21 Dec 2004 08:52:46 -0000 1.85 +++ CPersistenceBroker.vb 21 Dec 2004 21:57:11 -0000 1.86 @@ -751,12 +751,12 @@ End Try End If If found Then - Value.IsDirty = False 'After populating a new object - Value.OriginalCacheKey = New CCacheKey(Value) - obj.SetAttributeValue(udaMap.Target, Value.GetSourceObject) - End If + Value.IsDirty = False 'After populating a new object + Value.OriginalCacheKey = New CCacheKey(Value) + obj.SetAttributeValue(udaMap.Target, Value.GetSourceObject) End If End If + End If ElseIf udaMap.Cardinality = CUDAMap.CardinalityEnum.ONE_TO_MANY Then For j = 1 To udaMap.getSize ValueVar = cm.getValueForRelationalDatabase(obj.GetValueByAttribute(udaMap.getEntry(j).FromAttrMap.Name)) @@ -2922,7 +2922,7 @@ PCAverageTimeBase.RawValue = 0 Catch ex As Exception Trace.WriteLine("Could not create performance counters. If using ASP.NET please see http://objectsharp.com/Blogs/bruce/archive/2003/12/05/222.aspx" & _ - vbCrLf & ex.Message) + vbCrLf & ex.Message) End Try End Sub End Class \ No newline at end of file Index: CPersistentCollection.vb =================================================================== RCS file: /cvsroot/jcframework/dotnet/CPersistentCollection.vb,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- CPersistentCollection.vb 27 Oct 2004 07:38:48 -0000 1.14 +++ CPersistentCollection.vb 21 Dec 2004 21:57:12 -0000 1.15 @@ -25,6 +25,9 @@ Private m_container As CPersistentObject Public Event ItemDirtied As EventHandler + Public Event ObjectRemoved(ByVal index As Integer, ByRef value As Object) + Public Event ObjectAdded(ByVal index As Integer, ByRef value As Object) + #Region "Collection Properties and Methods" '''----------------------------------------------------------------------------- @@ -287,6 +290,7 @@ AddHandler CType(value, CPersistentObject).RemoveMe, AddressOf Remove AddHandler CType(value, CPersistentObject).MarkedAsDirty, AddressOf ItemDirtiedHandler RaiseEvent ListChanged(Me, New ListChangedEventArgs(ListChangedType.ItemAdded, index)) + RaiseEvent ObjectAdded(index, value) If Not (m_container Is Nothing) Then m_container.SetDirtyFlag() End If @@ -302,6 +306,7 @@ ' RemoveHandler CType(value, CPersistentObject).MarkedAsDirty, AddressOf ItemDirtiedHandler ' RemoveHandler CType(value, CPersistentObject).RemoveMe, AddressOf Remove RaiseEvent ListChanged(Me, New ListChangedEventArgs(ListChangedType.ItemDeleted, index)) + RaiseEvent ObjectRemoved(index, value) If Not (m_container Is Nothing) Then m_container.SetDirtyFlag() End If |