Index: TECH/PubSub/impl/EventDispatcher.cls.xml =================================================================== diff -u -r2955 -r2957 --- TECH/PubSub/impl/EventDispatcher.cls.xml (.../EventDispatcher.cls.xml) (revision 2955) +++ TECH/PubSub/impl/EventDispatcher.cls.xml (.../EventDispatcher.cls.xml) (revision 2957) @@ -79,7 +79,7 @@ Event:TECH.PubSub.Event 1 - @@ -99,17 +99,23 @@ Try { #dim EventDataClassname As %String = $classname(Event.Data) - #dim SerializedObject As %String = ..GeefGeserializeerdeString(Event) - #dim SerializedData As %String = $System.Encryption.Base64Encode(SerializedObject) + #dim XmlStream As %Stream.Object = ..GeefGeserializeerdeStream(Event) - do LogDetail.WriteLine("Event: "_Event.Type_", Class: "_Subscription.RespondingClass_", Method: "_Subscription.RespondingMethod_", Data:"_$$LCVT^vhLib(SerializedObject)) - do LogDetail.WriteLine("") - do LogDetail.WriteLine("Reinvoke:") - do LogDetail.WriteLine("Set DataString = $System.Encryption.Base64Decode("""_SerializedData_""")") - do LogDetail.WriteLine("Set EventData = ##class(TECH.XMLCorrelater).%New().FromString(DataString,"""_EventDataClassname_""","""_EventDataClassname_""")") - do LogDetail.WriteLine("Set Event = ##class("_Event.%ClassName(1)_").%New(EventData)") - do LogDetail.WriteLine("Do $ZOBJCLASSMETHOD("""_Subscription.RespondingClass_""", """_Subscription.RespondingMethod_""", Event)") + do LogDetail.Write("Event: "_Event.Type_", Class: "_Subscription.RespondingClass_", Method: "_Subscription.RespondingMethod_", Data:") + do LogDetail.CopyFrom(XmlStream) + + do XmlStream.Rewind() + + if XmlStream.Size < 32000 { + do LogDetail.WriteLine("") + do LogDetail.WriteLine("Reinvoke:") + do LogDetail.WriteLine("Set DataString = $System.Encryption.Base64Decode("""_$System.Encryption.Base64Encode(XmlStream.Read())_""")") + do LogDetail.WriteLine("Set EventData = ##class(TECH.XMLCorrelater).%New().FromString(DataString,"""_EventDataClassname_""","""_EventDataClassname_""")") + do LogDetail.WriteLine("Set Event = ##class("_Event.%ClassName(1)_").%New(EventData)") + do LogDetail.WriteLine("Do $ZOBJCLASSMETHOD("""_Subscription.RespondingClass_""", """_Subscription.RespondingMethod_""", Event)") + } + do LogDetail.WriteLine("") do LogDetail.WriteLine("Error: ") do LogDetail.WriteLine(Exception.ToString()) @@ -130,14 +136,14 @@ ]]> - + Event:TECH.PubSub.Event 1 %String