diff options
author | Justin Clarke Casey | 2009-05-25 19:54:47 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2009-05-25 19:54:47 +0000 |
commit | 582c20b1c4fb669884f0e2804487dd050f779f2b (patch) | |
tree | 3152941227a4445f08fa2ff5941890c447b3dfca /OpenSim/Framework | |
parent | One more utility. Not used yet. (diff) | |
download | opensim-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.cs | 24 | ||||
-rw-r--r-- | OpenSim/Framework/Servers/HttpServer/RestSessionService.cs | 4 | ||||
-rw-r--r-- | OpenSim/Framework/Servers/VersionInfo.cs | 2 |
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 | } |