From 60d68ee3122a974007adec6e651fad461d8abda4 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sun, 19 Feb 2012 18:10:00 +0000 Subject: Vehicle XML serialization more complete. Inactived by coments in SceneObjectSerializar.cs until proper testing --- .../Scenes/Serialization/SceneObjectSerializer.cs | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs') diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs index 4b80e37..eaf32b8 100644 --- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs +++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs @@ -349,6 +349,11 @@ namespace OpenSim.Region.Framework.Scenes.Serialization m_SOPXmlProcessors.Add("Buoyancy", ProcessBuoyancy); m_SOPXmlProcessors.Add("VolumeDetectActive", ProcessVolumeDetectActive); + + //Ubit comented until proper testing + // m_SOPXmlProcessors.Add("Vehicle", ProcessVehicle); + + #endregion #region TaskInventoryXmlProcessors initialization @@ -571,6 +576,25 @@ namespace OpenSim.Region.Framework.Scenes.Serialization obj.ClickAction = (byte)reader.ReadElementContentAsInt("ClickAction", String.Empty); } + private static void ProcessVehicle(SceneObjectPart obj, XmlTextReader reader) + { + bool errors = false; + SOPVehicle _vehicle = new SOPVehicle(); + + _vehicle.FromXml2(reader, out errors); + + if (errors) + { + obj.sopVehicle = null; + m_log.DebugFormat( + "[SceneObjectSerializer]: Parsing Vehicle for object part {0} {1} encountered errors. Please see earlier log entries.", + obj.Name, obj.UUID); + } + else + obj.sopVehicle = _vehicle; + } + + private static void ProcessShape(SceneObjectPart obj, XmlTextReader reader) { bool errors = false; @@ -1231,6 +1255,10 @@ namespace OpenSim.Region.Framework.Scenes.Serialization writer.WriteElementString("Buoyancy", sop.Buoyancy.ToString()); writer.WriteElementString("VolumeDetectActive", sop.VolumeDetectActive.ToString().ToLower()); + //Ubit comented until proper testing + // if (sop.sopVehicle != null) + // sop.sopVehicle.ToXml2(writer); + writer.WriteEndElement(); } -- cgit v1.1