aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
authorJustin Clarke Casey2009-05-25 19:54:47 +0000
committerJustin Clarke Casey2009-05-25 19:54:47 +0000
commit582c20b1c4fb669884f0e2804487dd050f779f2b (patch)
tree3152941227a4445f08fa2ff5941890c447b3dfca /OpenSim/Framework
parentOne more utility. Not used yet. (diff)
downloadopensim-SC-582c20b1c4fb669884f0e2804487dd050f779f2b.zip
opensim-SC-582c20b1c4fb669884f0e2804487dd050f779f2b.tar.gz
opensim-SC-582c20b1c4fb669884f0e2804487dd050f779f2b.tar.bz2
opensim-SC-582c20b1c4fb669884f0e2804487dd050f779f2b.tar.xz
* reseparate inventory item creator id and creator uuid
* unfortunately, while the client requires uuids and we want to be able to have arbitrary string ids, these cannot be kept in sync * I think the problems last time were due to a serialization change * So the major inteface version has been bumped to take care of any lingering issues here. * This means that region servers beyond this revision can only connect to similarly uptodate grid services, and vice versa
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/InventoryItemBase.cs24
-rw-r--r--OpenSim/Framework/Servers/HttpServer/RestSessionService.cs4
-rw-r--r--OpenSim/Framework/Servers/VersionInfo.cs2
3 files changed, 19 insertions, 11 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)
diff --git a/OpenSim/Framework/Servers/HttpServer/RestSessionService.cs b/OpenSim/Framework/Servers/HttpServer/RestSessionService.cs
index f5e4248..ec2f9ec 100644
--- a/OpenSim/Framework/Servers/HttpServer/RestSessionService.cs
+++ b/OpenSim/Framework/Servers/HttpServer/RestSessionService.cs
@@ -236,10 +236,6 @@ namespace OpenSim.Framework.Servers.HttpServer
236 /// <summary> 236 /// <summary>
237 /// The operation to perform once trust has been established. 237 /// The operation to perform once trust has been established.
238 /// </summary> 238 /// </summary>
239 /// <param name="httpMethod"></param>
240 /// <param name="path"></param>
241 /// <param name="method"></param>
242 /// <param name="tmethod"></param>
243 private RestDeserialiseMethod<TRequest, TResponse> m_method; 239 private RestDeserialiseMethod<TRequest, TResponse> m_method;
244 240
245 /// <summary> 241 /// <summary>
diff --git a/OpenSim/Framework/Servers/VersionInfo.cs b/OpenSim/Framework/Servers/VersionInfo.cs
index 7ed3b96..c16a7f4 100644
--- a/OpenSim/Framework/Servers/VersionInfo.cs
+++ b/OpenSim/Framework/Servers/VersionInfo.cs
@@ -48,6 +48,6 @@ namespace OpenSim
48 /// of the code that is too old. 48 /// of the code that is too old.
49 /// 49 ///
50 /// </value> 50 /// </value>
51 public readonly static int MajorInterfaceVersion = 3; 51 public readonly static int MajorInterfaceVersion = 4;
52 } 52 }
53} 53}