commit 07cf72bd2ab7dc37186f74201cb2555405d5ec0b
Author: @havlijan17 <havlijan@students.zcu.cz>
Date:   Sun Apr 26 22:41:39 2020 +0200

    re #7891 formatting dictionaries removed

diff --git a/project/Deserializer/.classpath b/project/Deserializer/.classpath
index 44e7249..908c943 100644
--- a/project/Deserializer/.classpath
+++ b/project/Deserializer/.classpath
@@ -8,8 +8,8 @@
 	</classpathentry>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" path="resources"/>
-	<classpathentry kind="lib" path="C:/Program Files/Java/jre1.8.0_241/lib/plugin.jar"/>
-	<classpathentry kind="lib" path="D:/Michal/University/1/LS/ASWI/semestralky/Deserializer/aswi2020horky/project/Deserializer/libs/mysql-connector-java-8.0.19.jar"/>
-	<classpathentry kind="lib" path="D:/Michal/University/1/LS/ASWI/semestralky/Deserializer/aswi2020horky/project/Deserializer/libs/ojdbc8.jar"/>
+	<classpathentry kind="lib" path="C:/Program Files/Java/jre1.8.0_251/lib/plugin.jar"/>
+	<classpathentry kind="lib" path="E:/Projekty/Mine/ZSWI/2020/sw/project/Deserializer/libs/mysql-connector-java-8.0.19.jar"/>
+	<classpathentry kind="lib" path="E:/Projekty/Mine/ZSWI/2020/sw/project/Deserializer/libs/ojdbc8.jar"/>
 	<classpathentry kind="output" path="bin"/>
-</classpath>
+</classpath>
\ No newline at end of file
diff --git a/project/Deserializer/src/Converter.java b/project/Deserializer/src/Converter.java
index d823270..3e72f8f 100644
--- a/project/Deserializer/src/Converter.java
+++ b/project/Deserializer/src/Converter.java
@@ -31,35 +31,12 @@ public class Converter extends Thread {
 	// Input.
 	private File inputFile;
 	private DB_Messenger query;
-	
-	// Key as enum?
-	private HashMap<String, String> htmlFormatting = new HashMap<String, String>();
-	private HashMap<String, String> jsonFormatting = new HashMap<String, String>();
 
 	public Converter(IConversionResults ui) {
 		this.ui = ui;
 		active = new AtomicBoolean(true);
 		entryLock = new ReentrantLock();
 		inputAvailable = new Semaphore(0);
-		fillInTestingDictionaries();
-	}
-
-	private void fillInTestingDictionaries() {
-		htmlFormatting.put("indent", "<span style=\"margin-left:2em;\">");
-		htmlFormatting.put("lineBreak", "<br/>");
-		htmlFormatting.put("classCol", "<span style=\"color:blue;font-weight:bold;\">");
-		htmlFormatting.put("fieldCol", "<span style=\"color:purple;\">");
-		htmlFormatting.put("valCol", "<span style=\"color:orange;\">");
-		htmlFormatting.put("keywordCol", "<span style=\"color:green;\">");
-		htmlFormatting.put("closeTagCol", "</span>");
-
-		jsonFormatting.put("indent", "\t");
-		jsonFormatting.put("lineBreak", "\n");
-		jsonFormatting.put("classCol", "");
-		jsonFormatting.put("fieldCol", "");
-		jsonFormatting.put("valCol", "");
-		jsonFormatting.put("keywordCol", "");
-		jsonFormatting.put("closeTagCol", "");
 	}
 
 	public void end() {
@@ -166,8 +143,8 @@ public class Converter extends Thread {
 			if (cnt != null) {
 				// Parametrizovany toJson pomoci dictionary
 				// Ciste HTML / Cisty JSON
-				json.append(cnt.toJson("", null, this.jsonFormatting, false));
-				html.append(cnt.toJson("", null, this.htmlFormatting, false));
+				json.append(cnt.toJson("", null, false));
+				html.append(cnt.toJson("", null, false));
 			}
 		}
 	}
diff --git a/project/Deserializer/src/jdeserialize/arrayobj.java b/project/Deserializer/src/jdeserialize/arrayobj.java
index 9ff7531..4183708 100644
--- a/project/Deserializer/src/jdeserialize/arrayobj.java
+++ b/project/Deserializer/src/jdeserialize/arrayobj.java
@@ -32,14 +32,14 @@ public class arrayobj extends contentbase {
         this.data = data;
     }
 
-    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child) {
+    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, boolean child) {
         StringBuilder sb = new StringBuilder();
         sb.append("[ ");
 
         for (Object el : this.data) {
             if (el != null) {
                 if (el instanceof content) {
-                    sb.append(((content) el).toJson(indentation, fielddata, formatting, child));
+                    sb.append(((content) el).toJson(indentation, fielddata, child));
                 }else{
                     sb.append(el.toString());
                 }
diff --git a/project/Deserializer/src/jdeserialize/classdesc.java b/project/Deserializer/src/jdeserialize/classdesc.java
index 22ac714..a86774b 100644
--- a/project/Deserializer/src/jdeserialize/classdesc.java
+++ b/project/Deserializer/src/jdeserialize/classdesc.java
@@ -224,7 +224,7 @@ public class classdesc extends contentbase {
         }
     }
 
-    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child)
+    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, boolean child)
     {
         StringBuffer sb = new StringBuffer();
         String val = "";
@@ -233,28 +233,32 @@ public class classdesc extends contentbase {
         {
             sb.append(indentation);
         }
-        sb.append("{" + formatting.get("lineBreak"));
+        sb.append("{\n");
 
-        indentation += formatting.get("indent");
+        indentation += "\t";
 
         // ClassName
-        sb.append(indentation).append(formatting.get("keywordCol")).append("class ").append(formatting.get("closeTagCol"));
-        sb.append(formatting.get("classCol")).append(this.name).append(formatting.get("closeTagCol"));
+        sb.append(indentation).append("class ");
+        sb.append(this.name);
         // extends
         if (this.superclass != null) {
-            sb.append(formatting.get("keywordCol")).append(" extends ").append(formatting.get("closeTagCol"));
-            sb.append(formatting.get("classCol")).append(this.superclass.name).append(formatting.get("closeTagCol"));
+            sb.append(" extends ");
+            sb.append(this.superclass.name);
         }
         // implements
         if (this.interfaces != null) {
-            sb.append(formatting.get("keywordCol")).append(" implements ").append(formatting.get("closeTagCol"));
+            sb.append(" implements ");
             for (String str : this.interfaces) {
-                sb.append(formatting.get("classCol")).append(str).append(formatting.get("closeTagCol"));
+                sb.append(str);
+                if(this.interfaces[this.interfaces.length-1] != str)
+                {
+                    sb.append(", ");
+                }
             }
         }
         sb.append(" : {"); // ending of first line
         
-        indentation += formatting.get("indent");
+        indentation += "\t";
 
         for (field f : this.fields) {
             // v this.fielddata najit element, jehoz key == classdesc
@@ -268,15 +272,13 @@ public class classdesc extends contentbase {
 
             if(locVal instanceof content)
             {
-                val = ((content)locVal).toJson(indentation, fielddata, formatting, true);
+                val = ((content)locVal).toJson(indentation, fielddata, true);
             }
             else {
                 val = locVal.toString();
             }
 
-            String locStringTest = formatting.get("lineBreak") + indentation +
-                formatting.get("fieldCol") + "\"" + f.name + "\"" + formatting.get("closeTagCol") +
-                " : " + val;
+            String locStringTest = "\n" + indentation + "\"" + f.name + "\"" + " : " + val;
             sb.append(locStringTest);
             /*sb.append(formatting.get("lineBreak")).append(indentation);
             sb.append(formatting.get("fieldCol")).append("\"").append(f.name).append("\"").append(formatting.get("closeTagCol"));
@@ -287,21 +289,21 @@ public class classdesc extends contentbase {
                 sb.append(", ");
             }
         }
-        indentation = indentation.replaceFirst(formatting.get("indent"), "");
+        indentation = indentation.replaceFirst("\t", "");
 
-        sb.append(formatting.get("lineBreak")).append(indentation).append("}");
+        sb.append("\n").append(indentation).append("}");
 
         if(this.superclass != null)
         {
-            indentation = indentation.replaceFirst(formatting.get("indent"), "");
-            sb.append(formatting.get("lineBreak")).append("}");
-            sb.append("," + formatting.get("lineBreak"));
-            sb.append(this.superclass.toJson(indentation, fielddata, formatting, child));
+            indentation = indentation.replaceFirst("\t", "");
+            sb.append("\n").append("}");
+            sb.append("," + "\n");
+            sb.append(this.superclass.toJson(indentation, fielddata, child));
         }
         else 
         {
-            indentation = indentation.replaceFirst(formatting.get("indent"), "");
-            sb.append(formatting.get("lineBreak")).append(indentation).append("}");
+            indentation = indentation.replaceFirst("\t", "");
+            sb.append("\n").append(indentation).append("}");
         }
 
         return sb.toString();
diff --git a/project/Deserializer/src/jdeserialize/content.java b/project/Deserializer/src/jdeserialize/content.java
index fc6d251..ef468ea 100644
--- a/project/Deserializer/src/jdeserialize/content.java
+++ b/project/Deserializer/src/jdeserialize/content.java
@@ -69,6 +69,6 @@ public interface content {
      */
     public void setIsExceptionObject(boolean value);
 
-    public String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child);
+    public String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, boolean child);
 }
 
diff --git a/project/Deserializer/src/jdeserialize/contentbase.java b/project/Deserializer/src/jdeserialize/contentbase.java
index 9fab5d7..5ccfe76 100644
--- a/project/Deserializer/src/jdeserialize/contentbase.java
+++ b/project/Deserializer/src/jdeserialize/contentbase.java
@@ -27,7 +27,7 @@ public class contentbase implements content {
     public void validate() throws ValidityException {
     }
 
-    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child)
+    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, boolean child)
     {
         return this.toString();
     }
diff --git a/project/Deserializer/src/jdeserialize/enumobj.java b/project/Deserializer/src/jdeserialize/enumobj.java
index b953602..c8e46bc 100644
--- a/project/Deserializer/src/jdeserialize/enumobj.java
+++ b/project/Deserializer/src/jdeserialize/enumobj.java
@@ -34,7 +34,7 @@ public class enumobj extends contentbase {
         this.classdesc = cd;
         this.value = so;
     }
-    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child) {
+    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, boolean child) {
         return this.value.value;
     }
 
diff --git a/project/Deserializer/src/jdeserialize/instance.java b/project/Deserializer/src/jdeserialize/instance.java
index 443ceb9..8b802ad 100644
--- a/project/Deserializer/src/jdeserialize/instance.java
+++ b/project/Deserializer/src/jdeserialize/instance.java
@@ -27,9 +27,9 @@ public class instance extends contentbase {
     }
 
     
-    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child)
+    public @Override String toJson(String indentation, Map<classdesc, Map<field, Object>> fielddata, boolean child)
     {
-        return this.classdesc.toJson(indentation, this.fielddata, formatting, child);
+        return this.classdesc.toJson(indentation, this.fielddata, child);
     }
     
     public String toString() {
diff --git a/project/Deserializer/src/jdeserialize/stringobj.java b/project/Deserializer/src/jdeserialize/stringobj.java
index 5910965..0ca5169 100644
--- a/project/Deserializer/src/jdeserialize/stringobj.java
+++ b/project/Deserializer/src/jdeserialize/stringobj.java
@@ -18,7 +18,7 @@ public class stringobj extends contentbase {
         return x;
     }
 
-    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, Map<String, String> formatting, boolean child)
+    public @Override String toJson(String indetation, Map<classdesc, Map<field, Object>> fielddata, boolean child)
     {
         return "\"" + this.value + "\"";
     }
diff --git a/project/html.txt b/project/html.txt
new file mode 100644
index 0000000..cb79894
--- /dev/null
+++ b/project/html.txt
@@ -0,0 +1,85 @@
+{
+<span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.item.ToItem</span><span style="color:green;"> extends </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.TransportObject</span> : {
+<span style="margin-left:2em;">}
+},
+{
+<span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.TransportObject</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"operation"</span> : U, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"status"</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.TransportObjectStatus</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"transactionID"</span> : 100000000001256779, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;"><span style="margin-left:2em;">}, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"table"</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.item.TbiRItem</span><span style="color:green;"> extends </span><span style="color:blue;font-weight:bold;">gk.tbi.TbiTable</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+},
+{
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.tbi.TbiTable</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"changed"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"hasMoreData"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"rows"</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">java.util.Vector</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"capacityIncrement"</span> : 0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"elementCount"</span> : 1, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"elementData"</span> : [ {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.std_bo_if.share.data.to.item.TbiRItemRow</span><span style="color:green;"> extends </span><span style="color:blue;font-weight:bold;">gk.tbi.TbiRow</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_authorized_for_sale_flag"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_bonuspoints_flag"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_collection_allowed_for_element_change_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_concession_item_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_consumer_pckg_weight"</span> : 3.77, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_conversion_factor_input_required_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_default_label_count"</span> : 1, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_delivery_stock_assortment_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_deposit_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_fee_included"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_fl_itm_dsc"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_item_deleted_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_markdown_type"</span> : 0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_negative_position_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_prohibited_for_return_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_recycling_fee"</span> : 0.0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_retain_prepayment_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_short_list_showing_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_sku_amount_factor"</span> : 1.0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_takeaway_allowed_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_tare_id"</span> : 0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_tax_exempt_prohibited_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_unit_pricing_required_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_stock_flag"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_stock_on_item_collection_elements_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_stock_on_main_item_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_turnover_flag"</span> : true, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_turnover_on_item_collection_elements_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_update_turnover_on_main_item_flag"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_warranty_period"</span> : 0.0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_wertartikelok"</span> : false, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_bon_text"</span> : "Ліжко надувне VELOUR 137х191см", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_description"</span> : "Ліжко надувне VELOUR 137х191см", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_item_id"</span> : "4733200", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_item_main_id"</span> : "4733200", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_merchandise_structure_id"</span> : "090503", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_name"</span> : "Ліжко надувне VELOUR 137х191см", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_pos_department_id"</span> : "1", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_price_processing"</span> : "01", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_retail_selling"</span> : "ST", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_stock_item_type_code"</span> : "00", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_supplier_id"</span> : "C290", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_tax_group_id"</span> : "83", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_xx001"</span> : "11", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"_xx002"</span> : "3926909290", 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+},
+{
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:green;">class </span><span style="color:blue;font-weight:bold;">gk.tbi.TbiRow</span> : {
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"status"</span> : 0, 
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="color:purple;">"notNullArray"</span> : [ -1, -20, 62, -22, -4, 17, -32, 12 ]
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">},  ]
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;"><span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;"><span style="margin-left:2em;">}
+<span style="margin-left:2em;">}
+}
\ No newline at end of file
diff --git a/project/jdeserialize_log.txt b/project/jdeserialize_log.txt
new file mode 100644
index 0000000..e69de29
diff --git a/project/json.txt b/project/json.txt
new file mode 100644
index 0000000..76a3060
--- /dev/null
+++ b/project/json.txt
@@ -0,0 +1,85 @@
+{
+	class gk.std_bo_if.share.data.to.item.ToItem extends gk.std_bo_if.share.data.to.TransportObject : {
+	}
+},
+{
+	class gk.std_bo_if.share.data.to.TransportObject : {
+		"operation" : U, 
+		"status" : {
+			class gk.std_bo_if.share.data.to.TransportObjectStatus : {
+				"transactionID" : 100000000001256779, 
+			}
+		}, 
+		"table" : {
+			class gk.std_bo_if.share.data.to.item.TbiRItem extends gk.tbi.TbiTable : {
+			}
+},
+{
+			class gk.tbi.TbiTable : {
+				"changed" : true, 
+				"hasMoreData" : false, 
+				"rows" : {
+					class java.util.Vector : {
+						"capacityIncrement" : 0, 
+						"elementCount" : 1, 
+						"elementData" : [ {
+							class gk.std_bo_if.share.data.to.item.TbiRItemRow extends gk.tbi.TbiRow : {
+								"_authorized_for_sale_flag" : true, 
+								"_bonuspoints_flag" : true, 
+								"_collection_allowed_for_element_change_flag" : false, 
+								"_concession_item_flag" : false, 
+								"_consumer_pckg_weight" : 3.77, 
+								"_conversion_factor_input_required_flag" : false, 
+								"_default_label_count" : 1, 
+								"_delivery_stock_assortment_flag" : false, 
+								"_deposit_flag" : false, 
+								"_fee_included" : true, 
+								"_fl_itm_dsc" : true, 
+								"_item_deleted_flag" : false, 
+								"_markdown_type" : 0, 
+								"_negative_position_flag" : false, 
+								"_prohibited_for_return_flag" : false, 
+								"_recycling_fee" : 0.0, 
+								"_retain_prepayment_flag" : false, 
+								"_short_list_showing_flag" : false, 
+								"_sku_amount_factor" : 1.0, 
+								"_takeaway_allowed_flag" : false, 
+								"_tare_id" : 0, 
+								"_tax_exempt_prohibited_flag" : false, 
+								"_unit_pricing_required_flag" : false, 
+								"_update_stock_flag" : true, 
+								"_update_stock_on_item_collection_elements_flag" : false, 
+								"_update_stock_on_main_item_flag" : false, 
+								"_update_turnover_flag" : true, 
+								"_update_turnover_on_item_collection_elements_flag" : false, 
+								"_update_turnover_on_main_item_flag" : false, 
+								"_warranty_period" : 0.0, 
+								"_wertartikelok" : false, 
+								"_bon_text" : "Ліжко надувне VELOUR 137х191см", 
+								"_description" : "Ліжко надувне VELOUR 137х191см", 
+								"_item_id" : "4733200", 
+								"_item_main_id" : "4733200", 
+								"_merchandise_structure_id" : "090503", 
+								"_name" : "Ліжко надувне VELOUR 137х191см", 
+								"_pos_department_id" : "1", 
+								"_price_processing" : "01", 
+								"_retail_selling" : "ST", 
+								"_stock_item_type_code" : "00", 
+								"_supplier_id" : "C290", 
+								"_tax_group_id" : "83", 
+								"_xx001" : "11", 
+								"_xx002" : "3926909290", 
+							}
+},
+{
+							class gk.tbi.TbiRow : {
+								"status" : 0, 
+								"notNullArray" : [ -1, -20, 62, -22, -4, 17, -32, 12 ]
+							}
+						},  ]
+					}
+				}
+			}
+		}
+	}
+}
\ No newline at end of file
