From ca47896204482bf4a6979e3838bf7f09f61cebeb Mon Sep 17 00:00:00 2001
From: giy <giy@omp-system.ru>
Date: Fri, 02 Sep 2022 14:16:56 +0300
Subject: [PATCH] Обновление до версии 2.9.0

---
 QtVsTools.Package/Common/Json/Serializer.cs |   28 ++++++++++++----------------
 1 files changed, 12 insertions(+), 16 deletions(-)

diff --git a/QtVsTools.Package/Common/Json/Serializer.cs b/QtVsTools.Package/Common/Json/Serializer.cs
index d263207..8121eed 100644
--- a/QtVsTools.Package/Common/Json/Serializer.cs
+++ b/QtVsTools.Package/Common/Json/Serializer.cs
@@ -36,6 +36,7 @@
 using System.Runtime.Serialization.Json;
 using System.Text;
 using System.Xml;
+using QtVsTools.Core;
 
 /// <summary>
 /// The classes in this namespace provide support to the serialization and deserialization of
@@ -127,11 +128,10 @@
                     serializer.WriteObject(writer, obj);
                     writer.Close();
                     return new JsonData() { Stream = stream };
-                } catch (Exception e) {
+                } catch (Exception exception) {
+                    exception.Log();
                     if (stream != null && stream.CanRead && stream.Length > 0)
                         stream.Dispose();
-                    System.Diagnostics.Debug.WriteLine(
-                        e.Message + "\r\n\r\nStacktrace:\r\n" + e.StackTrace);
                     return null;
                 }
             }
@@ -151,16 +151,14 @@
                     using (reader = XmlReader.Create(data.XmlStream)) {
                         var obj = serializer.ReadObject(reader, false);
 
-                        var container = obj as IDeferredObjectContainer;
-                        if (container != null)
+                        if (obj is IDeferredObjectContainer container)
                             deferredObjects.ForEach(x => container.Add(x));
 
                         return obj;
                     }
 
-                } catch (Exception e) {
-                    System.Diagnostics.Debug.WriteLine(
-                        e.Message + "\r\n\r\nStacktrace:\r\n" + e.StackTrace);
+                } catch (Exception exception) {
+                    exception.Log();
                     return null;
 
                 } finally {
@@ -206,9 +204,8 @@
                     data.XmlStream = new MemoryStream(xmlData);
                 }
                 return true;
-            } catch (Exception e) {
-                System.Diagnostics.Debug.WriteLine(
-                    e.Message + "\r\n\r\nStacktrace:\r\n" + e.StackTrace);
+            } catch (Exception exception) {
+                exception.Log();
                 return false;
             }
         }
@@ -245,9 +242,9 @@
 
         #region //////////////////// Data Contract Surrogate //////////////////////////////////////
 
-        static Exclusive<Serializer> sharedInstance = new Exclusive<Serializer>();
+        static readonly Exclusive<Serializer> sharedInstance = new Exclusive<Serializer>();
         private XmlReader reader = null;
-        private List<IDeferredObject> deferredObjects = new List<IDeferredObject>();
+        private readonly List<IDeferredObject> deferredObjects = new List<IDeferredObject>();
 
         public static IJsonData GetCurrentJsonData()
         {
@@ -260,9 +257,8 @@
                 root.Append("</root>");
                 var xmlData = Encoding.UTF8.GetBytes(root.ToString());
                 return new JsonData { XmlStream = new MemoryStream(xmlData) };
-            } catch (Exception e) {
-                System.Diagnostics.Debug.WriteLine(
-                    e.Message + "\r\n\r\nStacktrace:\r\n" + e.StackTrace);
+            } catch (Exception exception) {
+                exception.Log();
                 return null;
             }
         }

--
Gitblit v1.9.1