diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Framework/PrimitiveBaseShape.cs | 38 |
1 files changed, 26 insertions, 12 deletions
diff --git a/OpenSim/Framework/PrimitiveBaseShape.cs b/OpenSim/Framework/PrimitiveBaseShape.cs index de7e42d..685599a 100644 --- a/OpenSim/Framework/PrimitiveBaseShape.cs +++ b/OpenSim/Framework/PrimitiveBaseShape.cs | |||
@@ -1238,7 +1238,7 @@ namespace OpenSim.Framework | |||
1238 | return null; | 1238 | return null; |
1239 | } | 1239 | } |
1240 | 1240 | ||
1241 | public void WriteXml(XmlWriter writer) | 1241 | public string ToXml() |
1242 | { | 1242 | { |
1243 | lock (this) | 1243 | lock (this) |
1244 | { | 1244 | { |
@@ -1265,18 +1265,26 @@ namespace OpenSim.Framework | |||
1265 | xtw.WriteEndElement(); | 1265 | xtw.WriteEndElement(); |
1266 | 1266 | ||
1267 | xtw.Flush(); | 1267 | xtw.Flush(); |
1268 | writer.WriteRaw(sw.ToString()); | 1268 | return sw.ToString(); |
1269 | } | 1269 | } |
1270 | } | 1270 | } |
1271 | } | 1271 | } |
1272 | } | 1272 | } |
1273 | 1273 | ||
1274 | public void ReadXml(XmlReader reader) | 1274 | public void WriteXml(XmlWriter writer) |
1275 | { | ||
1276 | writer.WriteRaw(ToXml()); | ||
1277 | } | ||
1278 | |||
1279 | public static MediaList FromXml(string rawXml) | ||
1275 | { | 1280 | { |
1276 | if (reader.IsEmptyElement) | 1281 | MediaList ml = new MediaList(); |
1277 | return; | 1282 | ml.ReadXml(rawXml); |
1278 | 1283 | return ml; | |
1279 | string rawXml = reader.ReadInnerXml(); | 1284 | } |
1285 | |||
1286 | public void ReadXml(string rawXml) | ||
1287 | { | ||
1280 | using (StringReader sr = new StringReader(rawXml)) | 1288 | using (StringReader sr = new StringReader(rawXml)) |
1281 | { | 1289 | { |
1282 | using (XmlTextReader xtr = new XmlTextReader(sr)) | 1290 | using (XmlTextReader xtr = new XmlTextReader(sr)) |
@@ -1292,8 +1300,6 @@ namespace OpenSim.Framework | |||
1292 | xtr.ReadStartElement("osmedia"); | 1300 | xtr.ReadStartElement("osmedia"); |
1293 | 1301 | ||
1294 | OSDArray osdMeArray = (OSDArray)OSDParser.DeserializeLLSDXml(xtr.ReadInnerXml()); | 1302 | OSDArray osdMeArray = (OSDArray)OSDParser.DeserializeLLSDXml(xtr.ReadInnerXml()); |
1295 | |||
1296 | List<MediaEntry> mediaEntries = new List<MediaEntry>(); | ||
1297 | foreach (OSD osdMe in osdMeArray) | 1303 | foreach (OSD osdMe in osdMeArray) |
1298 | { | 1304 | { |
1299 | MediaEntry me = (osdMe is OSDMap ? MediaEntry.FromOSD(osdMe) : new MediaEntry()); | 1305 | MediaEntry me = (osdMe is OSDMap ? MediaEntry.FromOSD(osdMe) : new MediaEntry()); |
@@ -1303,7 +1309,15 @@ namespace OpenSim.Framework | |||
1303 | xtr.ReadEndElement(); | 1309 | xtr.ReadEndElement(); |
1304 | } | 1310 | } |
1305 | } | 1311 | } |
1306 | } | 1312 | } |
1313 | |||
1314 | public void ReadXml(XmlReader reader) | ||
1315 | { | ||
1316 | if (reader.IsEmptyElement) | ||
1317 | return; | ||
1318 | |||
1319 | ReadXml(reader.ReadInnerXml()); | ||
1320 | } | ||
1307 | } | 1321 | } |
1308 | } | 1322 | } |
1309 | } \ No newline at end of file | 1323 | } \ No newline at end of file |