aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectPart.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index b615d42..f69a30c 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -445,6 +445,7 @@ namespace OpenSim.Region.Framework.Scenes
445 private DateTime m_expires; 445 private DateTime m_expires;
446 private DateTime m_rezzed; 446 private DateTime m_rezzed;
447 private bool m_createSelected = false; 447 private bool m_createSelected = false;
448 private string m_creatorData = string.Empty;
448 449
449 public UUID CreatorID 450 public UUID CreatorID
450 { 451 {
@@ -458,6 +459,61 @@ namespace OpenSim.Region.Framework.Scenes
458 } 459 }
459 } 460 }
460 461
462 public string CreatorData // = <profile url>;<name>
463 {
464 get { return m_creatorData; }
465 set { m_creatorData = value; }
466 }
467
468 /// <summary>
469 /// Used by the DB layer to retrieve / store the entire user identification.
470 /// The identification can either be a simple UUID or a string of the form
471 /// uuid[;profile_url[;name]]
472 /// </summary>
473 public string CreatorIdentification
474 {
475 get
476 {
477 if (m_creatorData != null && m_creatorData != string.Empty)
478 return _creatorID.ToString() + ';' + m_creatorData;
479 else
480 return _creatorID.ToString();
481 }
482 set
483 {
484 if ((value == null) || (value != null && value == string.Empty))
485 {
486 m_creatorData = string.Empty;
487 return;
488 }
489
490 if (!value.Contains(";")) // plain UUID
491 {
492 UUID uuid = UUID.Zero;
493 UUID.TryParse(value, out uuid);
494 _creatorID = uuid;
495 }
496 else // <uuid>[;<endpoint>[;name]]
497 {
498 string name = "Unknown User";
499 string[] parts = value.Split(';');
500 if (parts.Length >= 1)
501 {
502 UUID uuid = UUID.Zero;
503 UUID.TryParse(parts[0], out uuid);
504 _creatorID = uuid;
505 }
506 if (parts.Length >= 2)
507 m_creatorData = parts[1];
508 if (parts.Length >= 3)
509 name = parts[2];
510
511 m_creatorData += ';' + name;
512
513 }
514 }
515 }
516
461 /// <summary> 517 /// <summary>
462 /// A relic from when we we thought that prims contained folder objects. In 518 /// A relic from when we we thought that prims contained folder objects. In
463 /// reality, prim == folder 519 /// reality, prim == folder