[gxml] Fixed SerializableObjectModel.deserialize_property for Node.parent
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gxml] Fixed SerializableObjectModel.deserialize_property for Node.parent
- Date: Sat, 20 Feb 2016 17:36:21 +0000 (UTC)
commit ab8a13ab69ca50dfad8469ce945414e815f29f43
Author: Daniel Espinosa <esodan gmail com>
Date: Sat Feb 20 11:34:12 2016 -0600
Fixed SerializableObjectModel.deserialize_property for Node.parent
gxml/GXmlAttribute.vala | 6 ++++++
gxml/SerializableObjectModel.vala | 31 +++++++++++++++++++++++++------
gxml/TwNode.vala | 6 ++++++
3 files changed, 37 insertions(+), 6 deletions(-)
---
diff --git a/gxml/GXmlAttribute.vala b/gxml/GXmlAttribute.vala
index 65d3ebe..b58474e 100644
--- a/gxml/GXmlAttribute.vala
+++ b/gxml/GXmlAttribute.vala
@@ -82,4 +82,10 @@ public class GXml.GAttribute : GXml.GNode, GXml.Attribute
return _attr->ns->prefix.dup ();
}
}
+ public override GXml.Node parent {
+ owned get {
+ if (_attr == null) return null;
+ return to_gnode (document as GDocument, _node);
+ }
+ }
}
diff --git a/gxml/SerializableObjectModel.vala b/gxml/SerializableObjectModel.vala
index 18e0e3b..aadf4dd 100644
--- a/gxml/SerializableObjectModel.vala
+++ b/gxml/SerializableObjectModel.vala
@@ -54,13 +54,29 @@ public abstract class GXml.SerializableObjectModel : Object, Serializable
public Gee.Map<string,GXml.Attribute> unknown_serializable_properties
{
owned get {
+#if DEBUG
+ GLib.message ("Getting unknown_serializable_nodes");
+ if (_doc != null)
+ if (_doc.root != null)
+ GLib.message ("Doc is not NULL and Root Attributes is NULL:"+(_doc.root.attrs == null).to_string
());
+ else
+ GLib.message ("Doc is not NULL but Root IS NULL");
+#endif
if (_doc == null) init_unknown_doc ();
- return (Gee.Map<string,GXml.Attribute>) _doc.root.attrs;
+ return _doc.root.attrs as Gee.Map<string,GXml.Attribute>;
}
}
public Gee.Collection<GXml.Node> unknown_serializable_nodes
{
owned get {
+#if DEBUG
+ GLib.message ("Getting unknown_serializable_nodes");
+ if (_doc != null)
+ if (_doc.root != null)
+ GLib.message ("Doc is not NULL and Root Children is NULL:"+(_doc.root.children == null).to_string
());
+ else
+ GLib.message ("Doc is not NULL but Root IS NULL");
+#endif
if (_doc == null) init_unknown_doc ();
return _doc.root.children;
}
@@ -319,12 +335,15 @@ public abstract class GXml.SerializableObjectModel : Object, Serializable
if (serialize_use_xml_node_value ()) {
serialized_xml_node_value = n.value;
#if DEBUG
- stdout.printf (@"$(get_type ().name ()): NODE '$(element.name)' CONTENT '$(n.value)'\n");
+ GLib.message (@"$(get_type ().name ()): NODE '$(element.name)' CONTENT '$(n.value)'\n");
#endif
} else {
if (get_enable_unknown_serializable_property ()) {
- if (n.value._chomp () == n.value && n.value != "")
- unknown_serializable_nodes.add (n);
+ GLib.message (@"Adding unknown Text node with value: $(n.value)");
+ if (n.value._chomp () == n.value && n.value != "") {
+ var t = _doc.create_text (n.value);
+ _doc.root.children.add (t);
+ }
}
}
}
@@ -358,7 +377,7 @@ public abstract class GXml.SerializableObjectModel : Object, Serializable
if (_doc == null) init_unknown_doc ();
if (property_node is GXml.Attribute) {
#if DEBUG
- GLib.message (@"Adding unknown attribute $(property_node.name) to $(get_type ().name ())\n");
+ GLib.message (@"Adding unknown attribute $(property_node.name) to $(get_type ().name ())
Size=$(unknown_serializable_properties.size.to_string ())\n");
#endif
((GXml.Element)_doc.root).set_attr (property_node.name, property_node.value);
}
@@ -372,7 +391,7 @@ public abstract class GXml.SerializableObjectModel : Object, Serializable
}
}
#if DEBUG
- GLib.message (@"Finishing deserialize unknown node $(property_node.name) to $(get_type ().name
()): Size=$(unknown_serializable_nodes.size.to_string ())");
+ GLib.message (@"Finishing deserialize unknown node/property $(property_node.name) to $(get_type
().name ())");
#endif
return true;
}
diff --git a/gxml/TwNode.vala b/gxml/TwNode.vala
index 6bce9a2..cd92dae 100644
--- a/gxml/TwNode.vala
+++ b/gxml/TwNode.vala
@@ -86,7 +86,13 @@ public abstract class GXml.TwNode : Object, GXml.Node
public inline override Gee.List<GXml.Node>? slice (int start, int stop) { return list.slice (start,
stop); }
public override bool add (GXml.Node item) {
+#if DEBUG
+ GLib.message ("Setting new parent to TwNode: "+item.name);
+#endif
(item as GXml.TwNode).set_parent (_parent);
+#if DEBUG
+ GLib.message ("Adding new TwNode: "+item.name);
+#endif
return list.add (item);
}
public inline override void clear () { list.clear (); }
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]