From 13ae16997d4bbca14e255d5989d1c44a76eac72c Mon Sep 17 00:00:00 2001 From: Valerio Virgillito Date: Wed, 16 May 2012 15:23:48 -0700 Subject: montage v.0.10 integration Signed-off-by: Valerio Virgillito --- node_modules/montage/core/serializer.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'node_modules/montage/core/serializer.js') diff --git a/node_modules/montage/core/serializer.js b/node_modules/montage/core/serializer.js index ba2fa04a..72543328 100755 --- a/node_modules/montage/core/serializer.js +++ b/node_modules/montage/core/serializer.js @@ -89,7 +89,8 @@ var Serializer = Montage.create(Montage, /** @lends module:montage/serializer.Se value: function(objects) { var serialization, valueSerialization, - label; + label, + serializeNullValues = this.serializeNullValues; this._serializedObjects = {}; this._serializedReferences = {}; @@ -100,14 +101,18 @@ var Serializer = Montage.create(Montage, /** @lends module:montage/serializer.Se this._objectReferences = {}; for (label in objects) { - this._objectLabels[objects[label].uuid] = label; + if (objects[label] != null) { + this._objectLabels[objects[label].uuid] = label; + } } for (label in objects) { - valueSerialization = this._serializeValue(objects[label], null, 2); - // objects are automatically inserted as top level objects after calling _serializeValue, but native objects have to be manually inserted them. - if (!(label in this._serializedObjects)) { - this._serializedObjects[label] = {value: valueSerialization}; + if (objects[label] != null || serializeNullValues) { + valueSerialization = this._serializeValue(objects[label], null, 2); + // objects are automatically inserted as top level objects after calling _serializeValue, but native objects have to be manually inserted them. + if (!(label in this._serializedObjects)) { + this._serializedObjects[label] = {value: valueSerialization}; + } } } @@ -653,6 +658,7 @@ var Serializer = Montage.create(Montage, /** @lends module:montage/serializer.Se return this._serializeValue(objectDescriptor.value); } else { objectDescriptor.properties = this._serializeObjectLiteral(objectDescriptor.properties, null, 3); + var units; if (units = /* assignment */ objectDescriptor._units) { delete objectDescriptor._units; this._applySerializationUnits(objectDescriptor, object, units); -- cgit v1.2.3