aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/InventoryItemBase.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework/InventoryItemBase.cs')
-rw-r--r--OpenSim/Framework/InventoryItemBase.cs24
1 files changed, 18 insertions, 6 deletions
diff --git a/OpenSim/Framework/InventoryItemBase.cs b/OpenSim/Framework/InventoryItemBase.cs
index 2968712..cab241e 100644
--- a/OpenSim/Framework/InventoryItemBase.cs
+++ b/OpenSim/Framework/InventoryItemBase.cs
@@ -84,26 +84,38 @@ namespace OpenSim.Framework
84 m_creatorId = value; 84 m_creatorId = value;
85 } 85 }
86 } 86 }
87 protected string m_creatorId;
87 88
88 protected string m_creatorId = UUID.Zero.ToString();
89 /// <value> 89 /// <value>
90 /// The creator of this item expressed as a UUID. Database plugins don't need to set this, it will be set by 90 /// The UUID for the creator. This may be different from the canonical CreatorId. This property is used
91 /// for communication with the client over the Second Life protocol, since that protocol can only understand
92 /// UUIDs. As this is a basic framework class, this means that both the string creator id and the uuid
93 /// reference have to be settable separately
94 ///
95 /// Database plugins don't need to set this, it will be set by
91 /// upstream code (or set by the get accessor if left unset). 96 /// upstream code (or set by the get accessor if left unset).
97 ///
98 /// XXX: An alternative to having a separate uuid property would be to hash the CreatorId appropriately
99 /// every time there was communication with a UUID-only client. This may be much more expensive.
92 /// </value> 100 /// </value>
93 public UUID CreatorIdAsUuid 101 public UUID CreatorIdAsUuid
94 { 102 {
95 get 103 get
96 { 104 {
97 UUID temp = UUID.Zero; 105 if (UUID.Zero == m_creatorIdAsUuid)
98 UUID.TryParse(CreatorId, out temp); 106 {
99 return temp; 107 UUID.TryParse(CreatorId, out m_creatorIdAsUuid);
108 }
109
110 return m_creatorIdAsUuid;
100 } 111 }
101 112
102 set 113 set
103 { 114 {
104 CreatorId = value.ToString(); 115 m_creatorIdAsUuid = value;
105 } 116 }
106 } 117 }
118 protected UUID m_creatorIdAsUuid = UUID.Zero;
107 119
108 /// <value> 120 /// <value>
109 /// The description of the inventory item (must be less than 64 characters) 121 /// The description of the inventory item (must be less than 64 characters)