diff options
author | Melanie | 2010-12-12 01:20:46 +0000 |
---|---|---|
committer | Melanie | 2010-12-12 01:20:46 +0000 |
commit | 8aa63093b118f257eff87c003e668249c34f5162 (patch) | |
tree | a5ea5448482d899729c29079ed0dab8394bb9be4 /OpenSim | |
parent | Fix border fence for physicals. Fix llRotLookAt() for Vehicles. (diff) | |
parent | Revert "Another stab at mantis #5256" (diff) | |
download | opensim-SC_OLD-8aa63093b118f257eff87c003e668249c34f5162.zip opensim-SC_OLD-8aa63093b118f257eff87c003e668249c34f5162.tar.gz opensim-SC_OLD-8aa63093b118f257eff87c003e668249c34f5162.tar.bz2 opensim-SC_OLD-8aa63093b118f257eff87c003e668249c34f5162.tar.xz |
Merge branch 'master' into careminster-presence-refactor
Diffstat (limited to 'OpenSim')
23 files changed, 324 insertions, 221 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs index 3c58a7d..3343f60 100644 --- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs +++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | |||
@@ -1845,7 +1845,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
1845 | /// property in StartHttp() for the HttpListener | 1845 | /// property in StartHttp() for the HttpListener |
1846 | public class HttpServerLogWriter : ILogWriter | 1846 | public class HttpServerLogWriter : ILogWriter |
1847 | { | 1847 | { |
1848 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 1848 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
1849 | 1849 | ||
1850 | public void Write(object source, LogPrio priority, string message) | 1850 | public void Write(object source, LogPrio priority, string message) |
1851 | { | 1851 | { |
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index feaea16..300d8a6 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs | |||
@@ -265,10 +265,11 @@ namespace OpenSim | |||
265 | LoadOar); | 265 | LoadOar); |
266 | 266 | ||
267 | m_console.Commands.AddCommand("region", false, "save oar", | 267 | m_console.Commands.AddCommand("region", false, "save oar", |
268 | "save oar [-v|--version=<N>] [-p|--profile=<url>] [<OAR path>]", | 268 | //"save oar [-v|--version=<N>] [-p|--profile=<url>] [<OAR path>]", |
269 | "save oar [-p|--profile=<url>] [<OAR path>]", | ||
269 | "Save a region's data to an OAR archive.", | 270 | "Save a region's data to an OAR archive.", |
270 | "-v|--version=<N> generates scene objects as per older versions of the serialization (e.g. -v=0)" + Environment.NewLine | 271 | // "-v|--version=<N> generates scene objects as per older versions of the serialization (e.g. -v=0)" + Environment.NewLine |
271 | + "-p|--profile=<url> adds the url of the profile service to the saved user information" + Environment.NewLine | 272 | "-p|--profile=<url> adds the url of the profile service to the saved user information" + Environment.NewLine |
272 | + "The OAR path must be a filesystem path." | 273 | + "The OAR path must be a filesystem path." |
273 | + " If this is not given then the oar is saved to region.oar in the current directory.", | 274 | + " If this is not given then the oar is saved to region.oar in the current directory.", |
274 | SaveOar); | 275 | SaveOar); |
diff --git a/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs b/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs index a8da330..1f60e36 100644 --- a/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs | |||
@@ -336,7 +336,7 @@ namespace OpenSim.Region.CoreModules.Avatar.ObjectCaps | |||
336 | 336 | ||
337 | try | 337 | try |
338 | { | 338 | { |
339 | // Taking our jpeg2000 data, decoding it, then saving it to a byte array with regular jpeg data | 339 | // Taking our jpeg2000 data, decoding it, then saving it to a byte array with regular data |
340 | 340 | ||
341 | imgstream = new MemoryStream(); | 341 | imgstream = new MemoryStream(); |
342 | 342 | ||
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs index cab341d..5e5f6c0 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs | |||
@@ -156,7 +156,11 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
156 | /// <param name="inventoryFolder">The inventory folder to save</param> | 156 | /// <param name="inventoryFolder">The inventory folder to save</param> |
157 | /// <param name="path">The path to which the folder should be saved</param> | 157 | /// <param name="path">The path to which the folder should be saved</param> |
158 | /// <param name="saveThisFolderItself">If true, save this folder itself. If false, only saves contents</param> | 158 | /// <param name="saveThisFolderItself">If true, save this folder itself. If false, only saves contents</param> |
159 | protected void SaveInvFolder(InventoryFolderBase inventoryFolder, string path, bool saveThisFolderItself, Dictionary<string, object> options, IUserAccountService userAccountService) | 159 | /// <param name="options"></param> |
160 | /// <param name="userAccountService"></param> | ||
161 | protected void SaveInvFolder( | ||
162 | InventoryFolderBase inventoryFolder, string path, bool saveThisFolderItself, | ||
163 | Dictionary<string, object> options, IUserAccountService userAccountService) | ||
160 | { | 164 | { |
161 | if (saveThisFolderItself) | 165 | if (saveThisFolderItself) |
162 | { | 166 | { |
@@ -249,7 +253,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
249 | 253 | ||
250 | // Write out control file. This has to be done first so that subsequent loaders will see this file first | 254 | // Write out control file. This has to be done first so that subsequent loaders will see this file first |
251 | // XXX: I know this is a weak way of doing it since external non-OAR aware tar executables will not do this | 255 | // XXX: I know this is a weak way of doing it since external non-OAR aware tar executables will not do this |
252 | m_archiveWriter.WriteFile(ArchiveConstants.CONTROL_FILE_PATH, Create0p1ControlFile()); | 256 | // not sure how to fix this though, short of going with a completely different file format. |
257 | m_archiveWriter.WriteFile(ArchiveConstants.CONTROL_FILE_PATH, CreateControlFile(options)); | ||
253 | m_log.InfoFormat("[INVENTORY ARCHIVER]: Added control file to archive."); | 258 | m_log.InfoFormat("[INVENTORY ARCHIVER]: Added control file to archive."); |
254 | 259 | ||
255 | if (inventoryFolder != null) | 260 | if (inventoryFolder != null) |
@@ -372,12 +377,24 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
372 | } | 377 | } |
373 | 378 | ||
374 | /// <summary> | 379 | /// <summary> |
375 | /// Create the control file for a 0.1 version archive | 380 | /// Create the control file for the archive |
376 | /// </summary> | 381 | /// </summary> |
382 | /// <param name="options"></param> | ||
377 | /// <returns></returns> | 383 | /// <returns></returns> |
378 | public static string Create0p1ControlFile() | 384 | public static string CreateControlFile(Dictionary<string, object> options) |
379 | { | 385 | { |
380 | int majorVersion = 0, minorVersion = 1; | 386 | int majorVersion, minorVersion; |
387 | |||
388 | if (options.ContainsKey("profile")) | ||
389 | { | ||
390 | majorVersion = 1; | ||
391 | minorVersion = 0; | ||
392 | } | ||
393 | else | ||
394 | { | ||
395 | majorVersion = 0; | ||
396 | minorVersion = 1; | ||
397 | } | ||
381 | 398 | ||
382 | m_log.InfoFormat("[INVENTORY ARCHIVER]: Creating version {0}.{1} IAR", majorVersion, minorVersion); | 399 | m_log.InfoFormat("[INVENTORY ARCHIVER]: Creating version {0}.{1} IAR", majorVersion, minorVersion); |
383 | 400 | ||
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs index b33c2b1..1e18095 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs | |||
@@ -55,7 +55,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
55 | /// <value> | 55 | /// <value> |
56 | /// Enable or disable checking whether the iar user is actually logged in | 56 | /// Enable or disable checking whether the iar user is actually logged in |
57 | /// </value> | 57 | /// </value> |
58 | public bool DisablePresenceChecks { get; set; } | 58 | // public bool DisablePresenceChecks { get; set; } |
59 | 59 | ||
60 | public event InventoryArchiveSaved OnInventoryArchiveSaved; | 60 | public event InventoryArchiveSaved OnInventoryArchiveSaved; |
61 | 61 | ||
@@ -95,10 +95,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
95 | 95 | ||
96 | public InventoryArchiverModule() {} | 96 | public InventoryArchiverModule() {} |
97 | 97 | ||
98 | public InventoryArchiverModule(bool disablePresenceChecks) | 98 | // public InventoryArchiverModule(bool disablePresenceChecks) |
99 | { | 99 | // { |
100 | DisablePresenceChecks = disablePresenceChecks; | 100 | // DisablePresenceChecks = disablePresenceChecks; |
101 | } | 101 | // } |
102 | 102 | ||
103 | public void Initialise(Scene scene, IConfigSource source) | 103 | public void Initialise(Scene scene, IConfigSource source) |
104 | { | 104 | { |
@@ -172,8 +172,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
172 | 172 | ||
173 | if (userInfo != null) | 173 | if (userInfo != null) |
174 | { | 174 | { |
175 | if (CheckPresence(userInfo.PrincipalID)) | 175 | // if (CheckPresence(userInfo.PrincipalID)) |
176 | { | 176 | // { |
177 | try | 177 | try |
178 | { | 178 | { |
179 | new InventoryArchiveWriteRequest(id, this, m_aScene, userInfo, invPath, saveStream).Execute(options, UserAccountService); | 179 | new InventoryArchiveWriteRequest(id, this, m_aScene, userInfo, invPath, saveStream).Execute(options, UserAccountService); |
@@ -189,13 +189,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
189 | } | 189 | } |
190 | 190 | ||
191 | return true; | 191 | return true; |
192 | } | 192 | // } |
193 | else | 193 | // else |
194 | { | 194 | // { |
195 | m_log.ErrorFormat( | 195 | // m_log.ErrorFormat( |
196 | "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", | 196 | // "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", |
197 | userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); | 197 | // userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); |
198 | } | 198 | // } |
199 | } | 199 | } |
200 | } | 200 | } |
201 | 201 | ||
@@ -212,8 +212,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
212 | 212 | ||
213 | if (userInfo != null) | 213 | if (userInfo != null) |
214 | { | 214 | { |
215 | if (CheckPresence(userInfo.PrincipalID)) | 215 | // if (CheckPresence(userInfo.PrincipalID)) |
216 | { | 216 | // { |
217 | try | 217 | try |
218 | { | 218 | { |
219 | new InventoryArchiveWriteRequest(id, this, m_aScene, userInfo, invPath, savePath).Execute(options, UserAccountService); | 219 | new InventoryArchiveWriteRequest(id, this, m_aScene, userInfo, invPath, savePath).Execute(options, UserAccountService); |
@@ -229,13 +229,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
229 | } | 229 | } |
230 | 230 | ||
231 | return true; | 231 | return true; |
232 | } | 232 | // } |
233 | else | 233 | // else |
234 | { | 234 | // { |
235 | m_log.ErrorFormat( | 235 | // m_log.ErrorFormat( |
236 | "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", | 236 | // "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", |
237 | userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); | 237 | // userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); |
238 | } | 238 | // } |
239 | } | 239 | } |
240 | } | 240 | } |
241 | 241 | ||
@@ -257,9 +257,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
257 | 257 | ||
258 | if (userInfo != null) | 258 | if (userInfo != null) |
259 | { | 259 | { |
260 | if (CheckPresence(userInfo.PrincipalID)) | 260 | // if (CheckPresence(userInfo.PrincipalID)) |
261 | { | 261 | // { |
262 | |||
263 | InventoryArchiveReadRequest request; | 262 | InventoryArchiveReadRequest request; |
264 | bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); | 263 | bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); |
265 | 264 | ||
@@ -280,13 +279,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
280 | UpdateClientWithLoadedNodes(userInfo, request.Execute()); | 279 | UpdateClientWithLoadedNodes(userInfo, request.Execute()); |
281 | 280 | ||
282 | return true; | 281 | return true; |
283 | } | 282 | // } |
284 | else | 283 | // else |
285 | { | 284 | // { |
286 | m_log.ErrorFormat( | 285 | // m_log.ErrorFormat( |
287 | "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", | 286 | // "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", |
288 | userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); | 287 | // userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); |
289 | } | 288 | // } |
290 | } | 289 | } |
291 | else | 290 | else |
292 | m_log.ErrorFormat("[INVENTORY ARCHIVER]: User {0} {1} not found", | 291 | m_log.ErrorFormat("[INVENTORY ARCHIVER]: User {0} {1} not found", |
@@ -306,8 +305,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
306 | 305 | ||
307 | if (userInfo != null) | 306 | if (userInfo != null) |
308 | { | 307 | { |
309 | if (CheckPresence(userInfo.PrincipalID)) | 308 | // if (CheckPresence(userInfo.PrincipalID)) |
310 | { | 309 | // { |
311 | InventoryArchiveReadRequest request; | 310 | InventoryArchiveReadRequest request; |
312 | bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); | 311 | bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); |
313 | 312 | ||
@@ -328,13 +327,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
328 | UpdateClientWithLoadedNodes(userInfo, request.Execute()); | 327 | UpdateClientWithLoadedNodes(userInfo, request.Execute()); |
329 | 328 | ||
330 | return true; | 329 | return true; |
331 | } | 330 | // } |
332 | else | 331 | // else |
333 | { | 332 | // { |
334 | m_log.ErrorFormat( | 333 | // m_log.ErrorFormat( |
335 | "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", | 334 | // "[INVENTORY ARCHIVER]: User {0} {1} {2} not logged in to this region simulator", |
336 | userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); | 335 | // userInfo.FirstName, userInfo.LastName, userInfo.PrincipalID); |
337 | } | 336 | // } |
338 | } | 337 | } |
339 | } | 338 | } |
340 | 339 | ||
@@ -529,28 +528,27 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
529 | } | 528 | } |
530 | } | 529 | } |
531 | 530 | ||
532 | /// <summary> | 531 | // /// <summary> |
533 | /// Check if the given user is present in any of the scenes. | 532 | // /// Check if the given user is present in any of the scenes. |
534 | /// </summary> | 533 | // /// </summary> |
535 | /// <param name="userId">The user to check</param> | 534 | // /// <param name="userId">The user to check</param> |
536 | /// <returns>true if the user is in any of the scenes, false otherwise</returns> | 535 | // /// <returns>true if the user is in any of the scenes, false otherwise</returns> |
537 | protected bool CheckPresence(UUID userId) | 536 | // protected bool CheckPresence(UUID userId) |
538 | { | 537 | // { |
539 | if (DisablePresenceChecks) | 538 | // if (DisablePresenceChecks) |
540 | return true; | 539 | // return true; |
541 | 540 | // | |
542 | foreach (Scene scene in m_scenes.Values) | 541 | // foreach (Scene scene in m_scenes.Values) |
543 | { | 542 | // { |
544 | ScenePresence p; | 543 | // ScenePresence p; |
545 | if ((p = scene.GetScenePresence(userId)) != null) | 544 | // if ((p = scene.GetScenePresence(userId)) != null) |
546 | { | 545 | // { |
547 | p.ControllingClient.SendAgentAlertMessage("Inventory operation has been started", false); | 546 | // p.ControllingClient.SendAgentAlertMessage("Inventory operation has been started", false); |
548 | return true; | 547 | // return true; |
549 | } | 548 | // } |
550 | } | 549 | // } |
551 | 550 | // | |
552 | return false; | 551 | // return false; |
553 | } | 552 | // } |
554 | |||
555 | } | 553 | } |
556 | } | 554 | } |
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs index 2747e15..76d0b85 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs | |||
@@ -120,7 +120,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
120 | TestHelper.InMethod(); | 120 | TestHelper.InMethod(); |
121 | // log4net.Config.XmlConfigurator.Configure(); | 121 | // log4net.Config.XmlConfigurator.Configure(); |
122 | 122 | ||
123 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 123 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
124 | 124 | ||
125 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); | 125 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); |
126 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); | 126 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); |
@@ -238,7 +238,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
238 | TestHelper.InMethod(); | 238 | TestHelper.InMethod(); |
239 | // log4net.Config.XmlConfigurator.Configure(); | 239 | // log4net.Config.XmlConfigurator.Configure(); |
240 | 240 | ||
241 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 241 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
242 | 242 | ||
243 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); | 243 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); |
244 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); | 244 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); |
@@ -355,7 +355,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
355 | // log4net.Config.XmlConfigurator.Configure(); | 355 | // log4net.Config.XmlConfigurator.Configure(); |
356 | 356 | ||
357 | SerialiserModule serialiserModule = new SerialiserModule(); | 357 | SerialiserModule serialiserModule = new SerialiserModule(); |
358 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 358 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
359 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); | 359 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); |
360 | SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); | 360 | SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); |
361 | 361 | ||
@@ -382,7 +382,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
382 | //log4net.Config.XmlConfigurator.Configure(); | 382 | //log4net.Config.XmlConfigurator.Configure(); |
383 | 383 | ||
384 | SerialiserModule serialiserModule = new SerialiserModule(); | 384 | SerialiserModule serialiserModule = new SerialiserModule(); |
385 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 385 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
386 | 386 | ||
387 | // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene | 387 | // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene |
388 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); | 388 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); |
@@ -443,7 +443,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
443 | string humanEscapedItemName = @"You & you are a mean\/man\/"; | 443 | string humanEscapedItemName = @"You & you are a mean\/man\/"; |
444 | string userPassword = "meowfood"; | 444 | string userPassword = "meowfood"; |
445 | 445 | ||
446 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 446 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
447 | 447 | ||
448 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); | 448 | Scene scene = SceneSetupHelpers.SetupScene("Inventory"); |
449 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); | 449 | SceneSetupHelpers.SetupSceneModules(scene, archiverModule); |
@@ -558,7 +558,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
558 | 558 | ||
559 | MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray()); | 559 | MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray()); |
560 | SerialiserModule serialiserModule = new SerialiserModule(); | 560 | SerialiserModule serialiserModule = new SerialiserModule(); |
561 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 561 | InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
562 | 562 | ||
563 | // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene | 563 | // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene |
564 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); | 564 | Scene scene = SceneSetupHelpers.SetupScene("inventory"); |
@@ -619,7 +619,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests | |||
619 | 619 | ||
620 | // MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray()); | 620 | // MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray()); |
621 | // SerialiserModule serialiserModule = new SerialiserModule(); | 621 | // SerialiserModule serialiserModule = new SerialiserModule(); |
622 | // InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); | 622 | // InventoryArchiverModule archiverModule = new InventoryArchiverModule(); |
623 | 623 | ||
624 | // // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene | 624 | // // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene |
625 | // Scene scene = SceneSetupHelpers.SetupScene(); | 625 | // Scene scene = SceneSetupHelpers.SetupScene(); |
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index b5da625..0c59ba1 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | |||
@@ -1326,7 +1326,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1326 | #region Agent Arrived | 1326 | #region Agent Arrived |
1327 | public void AgentArrivedAtDestination(UUID id) | 1327 | public void AgentArrivedAtDestination(UUID id) |
1328 | { | 1328 | { |
1329 | //m_log.Debug(" >>> ReleaseAgent called <<< "); | 1329 | m_log.DebugFormat("[ENTITY TRANSFER MODULE]: Agent {0} released", id); |
1330 | ResetFromTransit(id); | 1330 | ResetFromTransit(id); |
1331 | } | 1331 | } |
1332 | 1332 | ||
diff --git a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs index 3291be4..7316e5b 100644 --- a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs +++ b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs | |||
@@ -165,7 +165,7 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender | |||
165 | int width = 256; | 165 | int width = 256; |
166 | int height = 256; | 166 | int height = 256; |
167 | int alpha = 255; // 0 is transparent | 167 | int alpha = 255; // 0 is transparent |
168 | Color bgColour = Color.White; // Default background color | 168 | Color bgColor = Color.White; // Default background color |
169 | char altDataDelim = ';'; | 169 | char altDataDelim = ';'; |
170 | 170 | ||
171 | char[] paramDelimiter = { ',' }; | 171 | char[] paramDelimiter = { ',' }; |
@@ -253,15 +253,16 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender | |||
253 | alpha = 256; | 253 | alpha = 256; |
254 | } | 254 | } |
255 | break; | 255 | break; |
256 | case "bgcolor": | ||
256 | case "bgcolour": | 257 | case "bgcolour": |
257 | int hex = 0; | 258 | int hex = 0; |
258 | if (Int32.TryParse(value, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hex)) | 259 | if (Int32.TryParse(value, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hex)) |
259 | { | 260 | { |
260 | bgColour = Color.FromArgb(hex); | 261 | bgColor = Color.FromArgb(hex); |
261 | } | 262 | } |
262 | else | 263 | else |
263 | { | 264 | { |
264 | bgColour = Color.FromName(value); | 265 | bgColor = Color.FromName(value); |
265 | } | 266 | } |
266 | break; | 267 | break; |
267 | case "altdatadelim": | 268 | case "altdatadelim": |
@@ -315,7 +316,7 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender | |||
315 | // background color in their scripts, only do when fully opaque | 316 | // background color in their scripts, only do when fully opaque |
316 | if (alpha >= 255) | 317 | if (alpha >= 255) |
317 | { | 318 | { |
318 | graph.FillRectangle(new SolidBrush(bgColour), 0, 0, width, height); | 319 | graph.FillRectangle(new SolidBrush(bgColor), 0, 0, width, height); |
319 | } | 320 | } |
320 | 321 | ||
321 | for (int w = 0; w < bitmap.Width; w++) | 322 | for (int w = 0; w < bitmap.Width; w++) |
@@ -616,25 +617,25 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender | |||
616 | } | 617 | } |
617 | } | 618 | } |
618 | } | 619 | } |
619 | else if (nextLine.StartsWith("PenColour")) | 620 | else if (nextLine.StartsWith("PenColour") || nextLine.StartsWith("PenColor")) |
620 | { | 621 | { |
621 | nextLine = nextLine.Remove(0, 9); | 622 | nextLine = nextLine.Remove(0, 9); |
622 | nextLine = nextLine.Trim(); | 623 | nextLine = nextLine.Trim(); |
623 | int hex = 0; | 624 | int hex = 0; |
624 | 625 | ||
625 | Color newColour; | 626 | Color newColor; |
626 | if (Int32.TryParse(nextLine, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hex)) | 627 | if (Int32.TryParse(nextLine, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hex)) |
627 | { | 628 | { |
628 | newColour = Color.FromArgb(hex); | 629 | newColor = Color.FromArgb(hex); |
629 | } | 630 | } |
630 | else | 631 | else |
631 | { | 632 | { |
632 | // this doesn't fail, it just returns black if nothing is found | 633 | // this doesn't fail, it just returns black if nothing is found |
633 | newColour = Color.FromName(nextLine); | 634 | newColor = Color.FromName(nextLine); |
634 | } | 635 | } |
635 | 636 | ||
636 | myBrush.Color = newColour; | 637 | myBrush.Color = newColor; |
637 | drawPen.Color = newColour; | 638 | drawPen.Color = newColor; |
638 | } | 639 | } |
639 | } | 640 | } |
640 | } | 641 | } |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs index f8a599a..9ec4ebe 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs | |||
@@ -136,14 +136,13 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
136 | ms.Close(); | 136 | ms.Close(); |
137 | 137 | ||
138 | m_log.InfoFormat("[ARCHIVER]: Added terrain information to archive."); | 138 | m_log.InfoFormat("[ARCHIVER]: Added terrain information to archive."); |
139 | |||
140 | 139 | ||
141 | // Write out scene object metadata | 140 | // Write out scene object metadata |
142 | foreach (SceneObjectGroup sceneObject in m_sceneObjects) | 141 | foreach (SceneObjectGroup sceneObject in m_sceneObjects) |
143 | { | 142 | { |
144 | //m_log.DebugFormat("[ARCHIVER]: Saving {0} {1}, {2}", entity.Name, entity.UUID, entity.GetType()); | 143 | //m_log.DebugFormat("[ARCHIVER]: Saving {0} {1}, {2}", entity.Name, entity.UUID, entity.GetType()); |
145 | 144 | ||
146 | string serializedObject = m_serialiser.SerializeGroupToXml2(sceneObject, m_options); | 145 | string serializedObject = m_serialiser.SerializeGroupToXml2(sceneObject, m_options); |
147 | m_archiveWriter.WriteFile(ArchiveHelpers.CreateObjectPath(sceneObject), serializedObject); | 146 | m_archiveWriter.WriteFile(ArchiveHelpers.CreateObjectPath(sceneObject), serializedObject); |
148 | } | 147 | } |
149 | 148 | ||
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs index 0699407..f2d487e 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs | |||
@@ -58,7 +58,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
58 | /// <summary> | 58 | /// <summary> |
59 | /// The maximum major version of OAR that we can write. | 59 | /// The maximum major version of OAR that we can write. |
60 | /// </summary> | 60 | /// </summary> |
61 | public static int MAX_MAJOR_VERSION = 1; | 61 | public static int MAX_MAJOR_VERSION = 0; |
62 | 62 | ||
63 | protected Scene m_scene; | 63 | protected Scene m_scene; |
64 | protected Stream m_saveStream; | 64 | protected Stream m_saveStream; |
@@ -206,37 +206,37 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
206 | /// <returns></returns> | 206 | /// <returns></returns> |
207 | public static string CreateControlFile(Dictionary<string, object> options) | 207 | public static string CreateControlFile(Dictionary<string, object> options) |
208 | { | 208 | { |
209 | int majorVersion = MAX_MAJOR_VERSION, minorVersion = 0; | 209 | int majorVersion = MAX_MAJOR_VERSION, minorVersion = 5; |
210 | 210 | // | |
211 | if (options.ContainsKey("version")) | 211 | // if (options.ContainsKey("version")) |
212 | { | 212 | // { |
213 | string[] parts = options["version"].ToString().Split('.'); | 213 | // string[] parts = options["version"].ToString().Split('.'); |
214 | if (parts.Length >= 1) | 214 | // if (parts.Length >= 1) |
215 | { | 215 | // { |
216 | majorVersion = Int32.Parse(parts[0]); | 216 | // majorVersion = Int32.Parse(parts[0]); |
217 | 217 | // | |
218 | if (parts.Length >= 2) | 218 | // if (parts.Length >= 2) |
219 | minorVersion = Int32.Parse(parts[1]); | 219 | // minorVersion = Int32.Parse(parts[1]); |
220 | } | 220 | // } |
221 | } | 221 | // } |
222 | 222 | // | |
223 | if (majorVersion < MIN_MAJOR_VERSION || majorVersion > MAX_MAJOR_VERSION) | 223 | // if (majorVersion < MIN_MAJOR_VERSION || majorVersion > MAX_MAJOR_VERSION) |
224 | { | 224 | // { |
225 | throw new Exception( | 225 | // throw new Exception( |
226 | string.Format( | 226 | // string.Format( |
227 | "OAR version number for save must be between {0} and {1}", | 227 | // "OAR version number for save must be between {0} and {1}", |
228 | MIN_MAJOR_VERSION, MAX_MAJOR_VERSION)); | 228 | // MIN_MAJOR_VERSION, MAX_MAJOR_VERSION)); |
229 | } | 229 | // } |
230 | else if (majorVersion == MAX_MAJOR_VERSION) | 230 | // else if (majorVersion == MAX_MAJOR_VERSION) |
231 | { | 231 | // { |
232 | // Force 1.0 | 232 | // // Force 1.0 |
233 | minorVersion = 0; | 233 | // minorVersion = 0; |
234 | } | 234 | // } |
235 | else if (majorVersion == MIN_MAJOR_VERSION) | 235 | // else if (majorVersion == MIN_MAJOR_VERSION) |
236 | { | 236 | // { |
237 | // Force 0.4 | 237 | // // Force 0.4 |
238 | minorVersion = 4; | 238 | // minorVersion = 4; |
239 | } | 239 | // } |
240 | 240 | ||
241 | m_log.InfoFormat("[ARCHIVER]: Creating version {0}.{1} OAR", majorVersion, minorVersion); | 241 | m_log.InfoFormat("[ARCHIVER]: Creating version {0}.{1} OAR", majorVersion, minorVersion); |
242 | //if (majorVersion == 1) | 242 | //if (majorVersion == 1) |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs index 2d7244e..9277c59 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs | |||
@@ -125,7 +125,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
125 | Dictionary<string, object> options = new Dictionary<string, object>(); | 125 | Dictionary<string, object> options = new Dictionary<string, object>(); |
126 | 126 | ||
127 | OptionSet ops = new OptionSet(); | 127 | OptionSet ops = new OptionSet(); |
128 | ops.Add("v|version=", delegate(string v) { options["version"] = v; }); | 128 | // ops.Add("v|version=", delegate(string v) { options["version"] = v; }); |
129 | ops.Add("p|profile=", delegate(string v) { options["profile"] = v; }); | 129 | ops.Add("p|profile=", delegate(string v) { options["profile"] = v; }); |
130 | 130 | ||
131 | List<string> mainParams = ops.Parse(cmdparams); | 131 | List<string> mainParams = ops.Parse(cmdparams); |
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index ecc7f40..7eebb99 100644 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs | |||
@@ -223,8 +223,27 @@ namespace OpenSim.Region.Framework.Scenes | |||
223 | if (sp.IsChildAgent) | 223 | if (sp.IsChildAgent) |
224 | return; | 224 | return; |
225 | 225 | ||
226 | coarseLocations.Add(sp.AbsolutePosition); | 226 | if (sp.ParentID != 0) |
227 | avatarUUIDs.Add(sp.UUID); | 227 | { |
228 | // sitting avatar | ||
229 | SceneObjectPart sop = m_parentScene.GetSceneObjectPart(sp.ParentID); | ||
230 | if (sop != null) | ||
231 | { | ||
232 | coarseLocations.Add(sop.AbsolutePosition + sp.OffsetPosition); | ||
233 | avatarUUIDs.Add(sp.UUID); | ||
234 | } | ||
235 | else | ||
236 | { | ||
237 | // we can't find the parent.. ! arg! | ||
238 | coarseLocations.Add(sp.AbsolutePosition); | ||
239 | avatarUUIDs.Add(sp.UUID); | ||
240 | } | ||
241 | } | ||
242 | else | ||
243 | { | ||
244 | coarseLocations.Add(sp.AbsolutePosition); | ||
245 | avatarUUIDs.Add(sp.UUID); | ||
246 | } | ||
228 | } | 247 | } |
229 | } | 248 | } |
230 | 249 | ||
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs index 3386e72..211a0a7 100644 --- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs +++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs | |||
@@ -311,7 +311,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
311 | OSD decodedMeshOsd = new OSD(); | 311 | OSD decodedMeshOsd = new OSD(); |
312 | byte[] meshBytes = new byte[physSize]; | 312 | byte[] meshBytes = new byte[physSize]; |
313 | System.Buffer.BlockCopy(primShape.SculptData, physOffset, meshBytes, 0, physSize); | 313 | System.Buffer.BlockCopy(primShape.SculptData, physOffset, meshBytes, 0, physSize); |
314 | byte[] decompressed = new byte[physSize * 5]; | 314 | // byte[] decompressed = new byte[physSize * 5]; |
315 | try | 315 | try |
316 | { | 316 | { |
317 | using (MemoryStream inMs = new MemoryStream(meshBytes)) | 317 | using (MemoryStream inMs = new MemoryStream(meshBytes)) |
diff --git a/OpenSim/Region/Physics/Meshing/SculptMesh.cs b/OpenSim/Region/Physics/Meshing/SculptMesh.cs index e58eb89..4a7f3ad 100644 --- a/OpenSim/Region/Physics/Meshing/SculptMesh.cs +++ b/OpenSim/Region/Physics/Meshing/SculptMesh.cs | |||
@@ -375,7 +375,7 @@ namespace PrimMesher | |||
375 | 375 | ||
376 | int coordsDown = rows.Count; | 376 | int coordsDown = rows.Count; |
377 | int coordsAcross = rows[0].Count; | 377 | int coordsAcross = rows[0].Count; |
378 | int lastColumn = coordsAcross - 1; | 378 | // int lastColumn = coordsAcross - 1; |
379 | 379 | ||
380 | float widthUnit = 1.0f / (coordsAcross - 1); | 380 | float widthUnit = 1.0f / (coordsAcross - 1); |
381 | float heightUnit = 1.0f / (coordsDown - 1); | 381 | float heightUnit = 1.0f / (coordsDown - 1); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index eba6e75..145c058 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | |||
@@ -345,6 +345,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
345 | } | 345 | } |
346 | } | 346 | } |
347 | 347 | ||
348 | internal void OSSLDeprecated(string function, string replacement) | ||
349 | { | ||
350 | OSSLShoutError(string.Format("Use of function {0} is deprecated. Use {1} instead.", function, replacement)); | ||
351 | } | ||
352 | |||
348 | protected void ScriptSleep(int delay) | 353 | protected void ScriptSleep(int delay) |
349 | { | 354 | { |
350 | delay = (int)((float)delay * m_ScriptDelayFactor); | 355 | delay = (int)((float)delay * m_ScriptDelayFactor); |
@@ -356,13 +361,22 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
356 | // | 361 | // |
357 | // OpenSim functions | 362 | // OpenSim functions |
358 | // | 363 | // |
364 | public LSL_Integer osSetTerrainHeight(int x, int y, double val) | ||
365 | { | ||
366 | CheckThreatLevel(ThreatLevel.High, "osSetTerrainHeight"); | ||
367 | return SetTerrainHeight(x, y, val); | ||
368 | } | ||
359 | public LSL_Integer osTerrainSetHeight(int x, int y, double val) | 369 | public LSL_Integer osTerrainSetHeight(int x, int y, double val) |
360 | { | 370 | { |
361 | CheckThreatLevel(ThreatLevel.High, "osTerrainSetHeight"); | 371 | CheckThreatLevel(ThreatLevel.High, "osTerrainSetHeight"); |
362 | 372 | OSSLDeprecated("osTerrainSetHeight", "osSetTerrainHeight"); | |
373 | return SetTerrainHeight(x, y, val); | ||
374 | } | ||
375 | private LSL_Integer SetTerrainHeight(int x, int y, double val) | ||
376 | { | ||
363 | m_host.AddScriptLPS(1); | 377 | m_host.AddScriptLPS(1); |
364 | if (x > ((int)Constants.RegionSize - 1) || x < 0 || y > ((int)Constants.RegionSize - 1) || y < 0) | 378 | if (x > ((int)Constants.RegionSize - 1) || x < 0 || y > ((int)Constants.RegionSize - 1) || y < 0) |
365 | OSSLError("osTerrainSetHeight: Coordinate out of bounds"); | 379 | OSSLError("osSetTerrainHeight: Coordinate out of bounds"); |
366 | 380 | ||
367 | if (World.Permissions.CanTerraformLand(m_host.OwnerID, new Vector3(x, y, 0))) | 381 | if (World.Permissions.CanTerraformLand(m_host.OwnerID, new Vector3(x, y, 0))) |
368 | { | 382 | { |
@@ -375,13 +389,22 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
375 | } | 389 | } |
376 | } | 390 | } |
377 | 391 | ||
392 | public LSL_Float osGetTerrainHeight(int x, int y) | ||
393 | { | ||
394 | CheckThreatLevel(ThreatLevel.None, "osGetTerrainHeight"); | ||
395 | return GetTerrainHeight(x, y); | ||
396 | } | ||
378 | public LSL_Float osTerrainGetHeight(int x, int y) | 397 | public LSL_Float osTerrainGetHeight(int x, int y) |
379 | { | 398 | { |
380 | CheckThreatLevel(ThreatLevel.None, "osTerrainGetHeight"); | 399 | CheckThreatLevel(ThreatLevel.None, "osTerrainGetHeight"); |
381 | 400 | OSSLDeprecated("osTerrainGetHeight", "osGetTerrainHeight"); | |
401 | return GetTerrainHeight(x, y); | ||
402 | } | ||
403 | private LSL_Float GetTerrainHeight(int x, int y) | ||
404 | { | ||
382 | m_host.AddScriptLPS(1); | 405 | m_host.AddScriptLPS(1); |
383 | if (x > ((int)Constants.RegionSize - 1) || x < 0 || y > ((int)Constants.RegionSize - 1) || y < 0) | 406 | if (x > ((int)Constants.RegionSize - 1) || x < 0 || y > ((int)Constants.RegionSize - 1) || y < 0) |
384 | OSSLError("osTerrainGetHeight: Coordinate out of bounds"); | 407 | OSSLError("osGetTerrainHeight: Coordinate out of bounds"); |
385 | 408 | ||
386 | return World.Heightmap[x, y]; | 409 | return World.Heightmap[x, y]; |
387 | } | 410 | } |
@@ -1008,9 +1031,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1008 | return drawList; | 1031 | return drawList; |
1009 | } | 1032 | } |
1010 | 1033 | ||
1034 | public string osSetPenColor(string drawList, string color) | ||
1035 | { | ||
1036 | CheckThreatLevel(ThreatLevel.None, "osSetPenColor"); | ||
1037 | |||
1038 | m_host.AddScriptLPS(1); | ||
1039 | drawList += "PenColor " + color + "; "; | ||
1040 | return drawList; | ||
1041 | } | ||
1042 | // Deprecated | ||
1011 | public string osSetPenColour(string drawList, string colour) | 1043 | public string osSetPenColour(string drawList, string colour) |
1012 | { | 1044 | { |
1013 | CheckThreatLevel(ThreatLevel.None, "osSetPenColour"); | 1045 | CheckThreatLevel(ThreatLevel.None, "osSetPenColour"); |
1046 | OSSLDeprecated("osSetPenColour", "osSetPenColor"); | ||
1014 | 1047 | ||
1015 | m_host.AddScriptLPS(1); | 1048 | m_host.AddScriptLPS(1); |
1016 | drawList += "PenColour " + colour + "; "; | 1049 | drawList += "PenColour " + colour + "; "; |
@@ -1019,7 +1052,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1019 | 1052 | ||
1020 | public string osSetPenCap(string drawList, string direction, string type) | 1053 | public string osSetPenCap(string drawList, string direction, string type) |
1021 | { | 1054 | { |
1022 | CheckThreatLevel(ThreatLevel.None, "osSetPenColour"); | 1055 | CheckThreatLevel(ThreatLevel.None, "osSetPenCap"); |
1023 | 1056 | ||
1024 | m_host.AddScriptLPS(1); | 1057 | m_host.AddScriptLPS(1); |
1025 | drawList += "PenCap " + direction + "," + type + "; "; | 1058 | drawList += "PenCap " + direction + "," + type + "; "; |
@@ -1164,6 +1197,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1164 | public double osSunGetParam(string param) | 1197 | public double osSunGetParam(string param) |
1165 | { | 1198 | { |
1166 | CheckThreatLevel(ThreatLevel.None, "osSunGetParam"); | 1199 | CheckThreatLevel(ThreatLevel.None, "osSunGetParam"); |
1200 | OSSLDeprecated("osSunGetParam", "osGetSunParam"); | ||
1201 | return GetSunParam(param); | ||
1202 | } | ||
1203 | public double osGetSunParam(string param) | ||
1204 | { | ||
1205 | CheckThreatLevel(ThreatLevel.None, "osGetSunParam"); | ||
1206 | return GetSunParam(param); | ||
1207 | } | ||
1208 | private double GetSunParam(string param) | ||
1209 | { | ||
1167 | m_host.AddScriptLPS(1); | 1210 | m_host.AddScriptLPS(1); |
1168 | 1211 | ||
1169 | double value = 0.0; | 1212 | double value = 0.0; |
@@ -1180,6 +1223,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1180 | public void osSunSetParam(string param, double value) | 1223 | public void osSunSetParam(string param, double value) |
1181 | { | 1224 | { |
1182 | CheckThreatLevel(ThreatLevel.None, "osSunSetParam"); | 1225 | CheckThreatLevel(ThreatLevel.None, "osSunSetParam"); |
1226 | OSSLDeprecated("osSunSetParam", "osSetSunParam"); | ||
1227 | SetSunParam(param, value); | ||
1228 | } | ||
1229 | public void osSetSunParam(string param, double value) | ||
1230 | { | ||
1231 | CheckThreatLevel(ThreatLevel.None, "osSetSunParam"); | ||
1232 | SetSunParam(param, value); | ||
1233 | } | ||
1234 | private void SetSunParam(string param, double value) | ||
1235 | { | ||
1183 | m_host.AddScriptLPS(1); | 1236 | m_host.AddScriptLPS(1); |
1184 | 1237 | ||
1185 | ISunModule module = World.RequestModuleInterface<ISunModule>(); | 1238 | ISunModule module = World.RequestModuleInterface<ISunModule>(); |
@@ -1205,9 +1258,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1205 | return String.Empty; | 1258 | return String.Empty; |
1206 | } | 1259 | } |
1207 | 1260 | ||
1208 | public void osWindParamSet(string plugin, string param, float value) | 1261 | public void osSetWindParam(string plugin, string param, float value) |
1209 | { | 1262 | { |
1210 | CheckThreatLevel(ThreatLevel.VeryLow, "osWindParamSet"); | 1263 | CheckThreatLevel(ThreatLevel.VeryLow, "osSetWindParam"); |
1211 | m_host.AddScriptLPS(1); | 1264 | m_host.AddScriptLPS(1); |
1212 | 1265 | ||
1213 | IWindModule module = World.RequestModuleInterface<IWindModule>(); | 1266 | IWindModule module = World.RequestModuleInterface<IWindModule>(); |
@@ -1221,9 +1274,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1221 | } | 1274 | } |
1222 | } | 1275 | } |
1223 | 1276 | ||
1224 | public float osWindParamGet(string plugin, string param) | 1277 | public float osGetWindParam(string plugin, string param) |
1225 | { | 1278 | { |
1226 | CheckThreatLevel(ThreatLevel.VeryLow, "osWindParamGet"); | 1279 | CheckThreatLevel(ThreatLevel.VeryLow, "osGetWindParam"); |
1227 | m_host.AddScriptLPS(1); | 1280 | m_host.AddScriptLPS(1); |
1228 | 1281 | ||
1229 | IWindModule module = World.RequestModuleInterface<IWindModule>(); | 1282 | IWindModule module = World.RequestModuleInterface<IWindModule>(); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs index 961987d..064df35 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs | |||
@@ -67,8 +67,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces | |||
67 | string osSetDynamicTextureDataBlendFace(string dynamicID, string contentType, string data, string extraParams, | 67 | string osSetDynamicTextureDataBlendFace(string dynamicID, string contentType, string data, string extraParams, |
68 | bool blend, int disp, int timer, int alpha, int face); | 68 | bool blend, int disp, int timer, int alpha, int face); |
69 | 69 | ||
70 | LSL_Float osTerrainGetHeight(int x, int y); | 70 | LSL_Float osGetTerrainHeight(int x, int y); |
71 | LSL_Integer osTerrainSetHeight(int x, int y, double val); | 71 | LSL_Float osTerrainGetHeight(int x, int y); // Deprecated |
72 | LSL_Integer osSetTerrainHeight(int x, int y, double val); | ||
73 | LSL_Integer osTerrainSetHeight(int x, int y, double val); //Deprecated | ||
72 | void osTerrainFlush(); | 74 | void osTerrainFlush(); |
73 | 75 | ||
74 | int osRegionRestart(double seconds); | 76 | int osRegionRestart(double seconds); |
@@ -107,7 +109,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces | |||
107 | string osSetFontName(string drawList, string fontName); | 109 | string osSetFontName(string drawList, string fontName); |
108 | string osSetFontSize(string drawList, int fontSize); | 110 | string osSetFontSize(string drawList, int fontSize); |
109 | string osSetPenSize(string drawList, int penSize); | 111 | string osSetPenSize(string drawList, int penSize); |
110 | string osSetPenColour(string drawList, string colour); | 112 | string osSetPenColor(string drawList, string color); |
113 | string osSetPenColour(string drawList, string colour); // Deprecated | ||
111 | string osSetPenCap(string drawList, string direction, string type); | 114 | string osSetPenCap(string drawList, string direction, string type); |
112 | string osDrawImage(string drawList, int width, int height, string imageUrl); | 115 | string osDrawImage(string drawList, int width, int height, string imageUrl); |
113 | vector osGetDrawStringSize(string contentType, string text, string fontName, int fontSize); | 116 | vector osGetDrawStringSize(string contentType, string text, string fontName, int fontSize); |
@@ -119,13 +122,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces | |||
119 | void osSetRegionSunSettings(bool useEstateSun, bool sunFixed, double sunHour); | 122 | void osSetRegionSunSettings(bool useEstateSun, bool sunFixed, double sunHour); |
120 | void osSetEstateSunSettings(bool sunFixed, double sunHour); | 123 | void osSetEstateSunSettings(bool sunFixed, double sunHour); |
121 | double osGetCurrentSunHour(); | 124 | double osGetCurrentSunHour(); |
122 | double osSunGetParam(string param); | 125 | double osGetSunParam(string param); |
123 | void osSunSetParam(string param, double value); | 126 | double osSunGetParam(string param); // Deprecated |
127 | void osSetSunParam(string param, double value); | ||
128 | void osSunSetParam(string param, double value); // Deprecated | ||
124 | 129 | ||
125 | // Wind Module Functions | 130 | // Wind Module Functions |
126 | string osWindActiveModelPluginName(); | 131 | string osWindActiveModelPluginName(); |
127 | void osWindParamSet(string plugin, string param, float value); | 132 | void osSetWindParam(string plugin, string param, float value); |
128 | float osWindParamGet(string plugin, string param); | 133 | float osGetWindParam(string plugin, string param); |
129 | 134 | ||
130 | // Parcel commands | 135 | // Parcel commands |
131 | void osParcelJoin(vector pos1, vector pos2); | 136 | void osParcelJoin(vector pos1, vector pos2); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs index f3142e6..70d489e 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs | |||
@@ -81,11 +81,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
81 | return m_OSSL_Functions.osGetCurrentSunHour(); | 81 | return m_OSSL_Functions.osGetCurrentSunHour(); |
82 | } | 82 | } |
83 | 83 | ||
84 | public double osGetSunParam(string param) | ||
85 | { | ||
86 | return m_OSSL_Functions.osGetSunParam(param); | ||
87 | } | ||
88 | // Deprecated | ||
84 | public double osSunGetParam(string param) | 89 | public double osSunGetParam(string param) |
85 | { | 90 | { |
86 | return m_OSSL_Functions.osSunGetParam(param); | 91 | return m_OSSL_Functions.osSunGetParam(param); |
87 | } | 92 | } |
88 | 93 | ||
94 | public void osSetSunParam(string param, double value) | ||
95 | { | ||
96 | m_OSSL_Functions.osSetSunParam(param, value); | ||
97 | } | ||
98 | // Deprecated | ||
89 | public void osSunSetParam(string param, double value) | 99 | public void osSunSetParam(string param, double value) |
90 | { | 100 | { |
91 | m_OSSL_Functions.osSunSetParam(param, value); | 101 | m_OSSL_Functions.osSunSetParam(param, value); |
@@ -97,14 +107,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
97 | } | 107 | } |
98 | 108 | ||
99 | // Not yet plugged in as available OSSL functions, so commented out | 109 | // Not yet plugged in as available OSSL functions, so commented out |
100 | // void osWindParamSet(string plugin, string param, float value) | 110 | // void osSetWindParam(string plugin, string param, float value) |
101 | // { | 111 | // { |
102 | // m_OSSL_Functions.osWindParamSet(plugin, param, value); | 112 | // m_OSSL_Functions.osSetWindParam(plugin, param, value); |
103 | // } | 113 | // } |
104 | // | 114 | // |
105 | // float osWindParamGet(string plugin, string param) | 115 | // float osGetWindParam(string plugin, string param) |
106 | // { | 116 | // { |
107 | // return m_OSSL_Functions.osWindParamGet(plugin, param); | 117 | // return m_OSSL_Functions.osGetWindParam(plugin, param); |
108 | // } | 118 | // } |
109 | 119 | ||
110 | public void osParcelJoin(vector pos1, vector pos2) | 120 | public void osParcelJoin(vector pos1, vector pos2) |
@@ -165,11 +175,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
165 | blend, disp, timer, alpha, face); | 175 | blend, disp, timer, alpha, face); |
166 | } | 176 | } |
167 | 177 | ||
178 | public LSL_Float osGetTerrainHeight(int x, int y) | ||
179 | { | ||
180 | return m_OSSL_Functions.osGetTerrainHeight(x, y); | ||
181 | } | ||
182 | // Deprecated | ||
168 | public LSL_Float osTerrainGetHeight(int x, int y) | 183 | public LSL_Float osTerrainGetHeight(int x, int y) |
169 | { | 184 | { |
170 | return m_OSSL_Functions.osTerrainGetHeight(x, y); | 185 | return m_OSSL_Functions.osTerrainGetHeight(x, y); |
171 | } | 186 | } |
172 | 187 | ||
188 | public LSL_Integer osSetTerrainHeight(int x, int y, double val) | ||
189 | { | ||
190 | return m_OSSL_Functions.osSetTerrainHeight(x, y, val); | ||
191 | } | ||
192 | // Deprecated | ||
173 | public LSL_Integer osTerrainSetHeight(int x, int y, double val) | 193 | public LSL_Integer osTerrainSetHeight(int x, int y, double val) |
174 | { | 194 | { |
175 | return m_OSSL_Functions.osTerrainSetHeight(x, y, val); | 195 | return m_OSSL_Functions.osTerrainSetHeight(x, y, val); |
@@ -333,6 +353,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
333 | return m_OSSL_Functions.osSetPenCap(drawList, direction, type); | 353 | return m_OSSL_Functions.osSetPenCap(drawList, direction, type); |
334 | } | 354 | } |
335 | 355 | ||
356 | public string osSetPenColor(string drawList, string color) | ||
357 | { | ||
358 | return m_OSSL_Functions.osSetPenColor(drawList, color); | ||
359 | } | ||
360 | // Deprecated | ||
336 | public string osSetPenColour(string drawList, string colour) | 361 | public string osSetPenColour(string drawList, string colour) |
337 | { | 362 | { |
338 | return m_OSSL_Functions.osSetPenColour(drawList, colour); | 363 | return m_OSSL_Functions.osSetPenColour(drawList, colour); |
diff --git a/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs b/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs index 0c41935..7ddcfa6 100644 --- a/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs +++ b/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs | |||
@@ -104,7 +104,7 @@ namespace OpenSim.Services.Connectors.Hypergrid | |||
104 | return false; | 104 | return false; |
105 | } | 105 | } |
106 | 106 | ||
107 | string uri = m_ServerURL + "/homeagent/" + aCircuit.AgentID + "/"; | 107 | string uri = m_ServerURL + "homeagent/" + aCircuit.AgentID + "/"; |
108 | 108 | ||
109 | Console.WriteLine(" >>> LoginAgentToGrid <<< " + uri); | 109 | Console.WriteLine(" >>> LoginAgentToGrid <<< " + uri); |
110 | 110 | ||
diff --git a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs index c2f43ca..4382005 100644 --- a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs +++ b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs | |||
@@ -235,6 +235,7 @@ namespace OpenSim.Services.Connectors.Simulation | |||
235 | m_log.Warn("[REMOTE SIMULATION CONNECTOR]: PackAgentCircuitData failed with exception: " + e.Message); | 235 | m_log.Warn("[REMOTE SIMULATION CONNECTOR]: PackAgentCircuitData failed with exception: " + e.Message); |
236 | return null; | 236 | return null; |
237 | } | 237 | } |
238 | |||
238 | // Add the input arguments | 239 | // Add the input arguments |
239 | args["destination_x"] = OSD.FromString(destination.RegionLocX.ToString()); | 240 | args["destination_x"] = OSD.FromString(destination.RegionLocX.ToString()); |
240 | args["destination_y"] = OSD.FromString(destination.RegionLocY.ToString()); | 241 | args["destination_y"] = OSD.FromString(destination.RegionLocY.ToString()); |
diff --git a/OpenSim/Services/GridService/HypergridLinker.cs b/OpenSim/Services/GridService/HypergridLinker.cs index d5d0195..9863ba0 100644 --- a/OpenSim/Services/GridService/HypergridLinker.cs +++ b/OpenSim/Services/GridService/HypergridLinker.cs | |||
@@ -26,6 +26,7 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.Collections; | ||
29 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
30 | using System.Linq; | 31 | using System.Linq; |
31 | using System.Net; | 32 | using System.Net; |
@@ -215,7 +216,9 @@ namespace OpenSim.Services.GridService | |||
215 | 216 | ||
216 | public bool TryCreateLink(UUID scopeID, int xloc, int yloc, string remoteRegionName, uint externalPort, string externalHostName, string serverURI, UUID ownerID, out GridRegion regInfo, out string reason) | 217 | public bool TryCreateLink(UUID scopeID, int xloc, int yloc, string remoteRegionName, uint externalPort, string externalHostName, string serverURI, UUID ownerID, out GridRegion regInfo, out string reason) |
217 | { | 218 | { |
218 | m_log.DebugFormat("[HYPERGRID LINKER]: Link to {0}:{1}:{2}, in {3}-{4}", externalHostName, externalPort, remoteRegionName, xloc, yloc); | 219 | m_log.DebugFormat("[HYPERGRID LINKER]: Link to {0}:{1}, in {2}-{3}", |
220 | ((serverURI == null) ? (externalHostName + ":" + externalPort) : serverURI), | ||
221 | remoteRegionName, xloc / Constants.RegionSize, yloc / Constants.RegionSize); | ||
219 | 222 | ||
220 | reason = string.Empty; | 223 | reason = string.Empty; |
221 | regInfo = new GridRegion(); | 224 | regInfo = new GridRegion(); |
@@ -242,7 +245,9 @@ namespace OpenSim.Services.GridService | |||
242 | GridRegion region = m_GridService.GetRegionByPosition(regInfo.ScopeID, regInfo.RegionLocX, regInfo.RegionLocY); | 245 | GridRegion region = m_GridService.GetRegionByPosition(regInfo.ScopeID, regInfo.RegionLocX, regInfo.RegionLocY); |
243 | if (region != null) | 246 | if (region != null) |
244 | { | 247 | { |
245 | m_log.WarnFormat("[HYPERGRID LINKER]: Coordinates {0}-{1} are already occupied by region {2} with uuid {3}", regInfo.RegionLocX, regInfo.RegionLocY, region.RegionName, region.RegionID); | 248 | m_log.WarnFormat("[HYPERGRID LINKER]: Coordinates {0}-{1} are already occupied by region {2} with uuid {3}", |
249 | regInfo.RegionLocX / Constants.RegionSize, regInfo.RegionLocY / Constants.RegionSize, | ||
250 | region.RegionName, region.RegionID); | ||
246 | reason = "Coordinates are already in use"; | 251 | reason = "Coordinates are already in use"; |
247 | return false; | 252 | return false; |
248 | } | 253 | } |
@@ -271,7 +276,8 @@ namespace OpenSim.Services.GridService | |||
271 | region = m_GridService.GetRegionByUUID(scopeID, regionID); | 276 | region = m_GridService.GetRegionByUUID(scopeID, regionID); |
272 | if (region != null) | 277 | if (region != null) |
273 | { | 278 | { |
274 | m_log.DebugFormat("[HYPERGRID LINKER]: Region already exists in coordinates {0} {1}", region.RegionLocX / Constants.RegionSize, region.RegionLocY / Constants.RegionSize); | 279 | m_log.DebugFormat("[HYPERGRID LINKER]: Region already exists in coordinates {0} {1}", |
280 | region.RegionLocX / Constants.RegionSize, region.RegionLocY / Constants.RegionSize); | ||
275 | regInfo = region; | 281 | regInfo = region; |
276 | return true; | 282 | return true; |
277 | } | 283 | } |
@@ -423,15 +429,14 @@ namespace OpenSim.Services.GridService | |||
423 | return; | 429 | return; |
424 | } | 430 | } |
425 | 431 | ||
426 | MainConsole.Instance.Output("Region Name Region UUID"); | 432 | MainConsole.Instance.Output("Region Name"); |
427 | MainConsole.Instance.Output("Location URI"); | 433 | MainConsole.Instance.Output("Location Region UUID"); |
428 | MainConsole.Instance.Output("-------------------------------------------------------------------------------"); | 434 | MainConsole.Instance.Output(new string('-', 72)); |
429 | foreach (RegionData r in regions) | 435 | foreach (RegionData r in regions) |
430 | { | 436 | { |
431 | MainConsole.Instance.Output(String.Format("{0,-39} {1}\n{2,-39} {3}\n", | 437 | MainConsole.Instance.Output(String.Format("{0}\n{2,-32} {1}\n", |
432 | r.RegionName, r.RegionID, | 438 | r.RegionName, r.RegionID, String.Format("{0},{1} ({2},{3})", r.posX, r.posY, |
433 | String.Format("{0},{1} ({2},{3})", r.posX, r.posY, r.posX / 256, r.posY / 256), | 439 | r.posX / Constants.RegionSize, r.posY / Constants.RegionSize))); |
434 | "http://" + r.Data["serverIP"].ToString() + ":" + r.Data["serverHttpPort"].ToString())); | ||
435 | } | 440 | } |
436 | return; | 441 | return; |
437 | } | 442 | } |
@@ -459,11 +464,14 @@ namespace OpenSim.Services.GridService | |||
459 | xloc = Convert.ToInt32(cmdparams[0]) * (int)Constants.RegionSize; | 464 | xloc = Convert.ToInt32(cmdparams[0]) * (int)Constants.RegionSize; |
460 | yloc = Convert.ToInt32(cmdparams[1]) * (int)Constants.RegionSize; | 465 | yloc = Convert.ToInt32(cmdparams[1]) * (int)Constants.RegionSize; |
461 | serverURI = cmdparams[2]; | 466 | serverURI = cmdparams[2]; |
462 | if (cmdparams.Length == 4) | 467 | if (cmdparams.Length > 3) |
463 | remoteName = cmdparams[3]; | 468 | remoteName = string.Join(" ", cmdparams, 3, cmdparams.Length - 3); |
464 | string reason = string.Empty; | 469 | string reason = string.Empty; |
465 | GridRegion regInfo; | 470 | GridRegion regInfo; |
466 | TryCreateLink(UUID.Zero, xloc, yloc, remoteName, 0, null, serverURI, UUID.Zero, out regInfo, out reason); | 471 | if (TryCreateLink(UUID.Zero, xloc, yloc, remoteName, 0, null, serverURI, UUID.Zero, out regInfo, out reason)) |
472 | MainConsole.Instance.Output("Hyperlink established"); | ||
473 | else | ||
474 | MainConsole.Instance.Output("Failed to link region: " + reason); | ||
467 | } | 475 | } |
468 | 476 | ||
469 | private void RunHGCommand(string command, string[] cmdparams) | 477 | private void RunHGCommand(string command, string[] cmdparams) |
@@ -488,18 +496,6 @@ namespace OpenSim.Services.GridService | |||
488 | } | 496 | } |
489 | else if (command.Equals("link-region")) | 497 | else if (command.Equals("link-region")) |
490 | { | 498 | { |
491 | if (cmdparams.Length > 0 && cmdparams.Length < 5) | ||
492 | { | ||
493 | RunLinkRegionCommand(cmdparams); | ||
494 | } | ||
495 | else | ||
496 | { | ||
497 | LinkRegionCmdUsage(); | ||
498 | } | ||
499 | return; | ||
500 | } | ||
501 | else if (command.Equals("link-region")) | ||
502 | { | ||
503 | if (cmdparams.Length < 3) | 499 | if (cmdparams.Length < 3) |
504 | { | 500 | { |
505 | if ((cmdparams.Length == 1) || (cmdparams.Length == 2)) | 501 | if ((cmdparams.Length == 1) || (cmdparams.Length == 2)) |
@@ -514,40 +510,24 @@ namespace OpenSim.Services.GridService | |||
514 | } | 510 | } |
515 | 511 | ||
516 | //this should be the prefererred way of setting up hg links now | 512 | //this should be the prefererred way of setting up hg links now |
517 | if ( cmdparams[2].StartsWith("http") && ( cmdparams.Length >= 3 && cmdparams.Length <= 5 )) { | 513 | if (cmdparams[2].StartsWith("http")) |
514 | { | ||
518 | RunLinkRegionCommand(cmdparams); | 515 | RunLinkRegionCommand(cmdparams); |
519 | } | 516 | } |
520 | else if (cmdparams[2].Contains(":")) | 517 | else if (cmdparams[2].Contains(":")) |
521 | { | 518 | { |
522 | // New format | 519 | // New format |
523 | int xloc, yloc; | 520 | string[] parts = cmdparams[2].Split(':'); |
524 | string mapName; | 521 | if (parts.Length > 2) |
525 | try | ||
526 | { | ||
527 | xloc = Convert.ToInt32(cmdparams[0]); | ||
528 | yloc = Convert.ToInt32(cmdparams[1]); | ||
529 | mapName = cmdparams[2]; | ||
530 | if (cmdparams.Length > 3) | ||
531 | for (int i = 3; i < cmdparams.Length; i++) | ||
532 | mapName += " " + cmdparams[i]; | ||
533 | |||
534 | //m_log.Info(">> MapName: " + mapName); | ||
535 | } | ||
536 | catch (Exception e) | ||
537 | { | 522 | { |
538 | MainConsole.Instance.Output("[HGrid] Wrong format for link-region command: " + e.Message); | 523 | // Insert remote region name |
539 | LinkRegionCmdUsage(); | 524 | ArrayList parameters = new ArrayList(cmdparams); |
540 | return; | 525 | parameters.Insert(3, parts[2]); |
526 | cmdparams = (string[])parameters.ToArray(typeof(string)); | ||
541 | } | 527 | } |
528 | cmdparams[2] = "http://" + parts[0] + ':' + parts[1]; | ||
542 | 529 | ||
543 | // Convert cell coordinates given by the user to meters | 530 | RunLinkRegionCommand(cmdparams); |
544 | xloc = xloc * (int)Constants.RegionSize; | ||
545 | yloc = yloc * (int)Constants.RegionSize; | ||
546 | string reason = string.Empty; | ||
547 | if (TryLinkRegionToCoords(UUID.Zero, mapName, xloc, yloc, out reason) == null) | ||
548 | MainConsole.Instance.Output("Failed to link region: " + reason); | ||
549 | else | ||
550 | MainConsole.Instance.Output("Hyperlink established"); | ||
551 | } | 531 | } |
552 | else | 532 | else |
553 | { | 533 | { |
@@ -556,16 +536,12 @@ namespace OpenSim.Services.GridService | |||
556 | int xloc, yloc; | 536 | int xloc, yloc; |
557 | uint externalPort; | 537 | uint externalPort; |
558 | string externalHostName; | 538 | string externalHostName; |
559 | string serverURI; | ||
560 | try | 539 | try |
561 | { | 540 | { |
562 | xloc = Convert.ToInt32(cmdparams[0]); | 541 | xloc = Convert.ToInt32(cmdparams[0]); |
563 | yloc = Convert.ToInt32(cmdparams[1]); | 542 | yloc = Convert.ToInt32(cmdparams[1]); |
564 | externalPort = Convert.ToUInt32(cmdparams[3]); | 543 | externalPort = Convert.ToUInt32(cmdparams[3]); |
565 | externalHostName = cmdparams[2]; | 544 | externalHostName = cmdparams[2]; |
566 | if ( cmdparams.Length == 4 ) { | ||
567 | |||
568 | } | ||
569 | //internalPort = Convert.ToUInt32(cmdparams[4]); | 545 | //internalPort = Convert.ToUInt32(cmdparams[4]); |
570 | //remotingPort = Convert.ToUInt32(cmdparams[5]); | 546 | //remotingPort = Convert.ToUInt32(cmdparams[5]); |
571 | } | 547 | } |
@@ -582,27 +558,30 @@ namespace OpenSim.Services.GridService | |||
582 | string reason = string.Empty; | 558 | string reason = string.Empty; |
583 | if (TryCreateLink(UUID.Zero, xloc, yloc, string.Empty, externalPort, externalHostName, UUID.Zero, out regInfo, out reason)) | 559 | if (TryCreateLink(UUID.Zero, xloc, yloc, string.Empty, externalPort, externalHostName, UUID.Zero, out regInfo, out reason)) |
584 | { | 560 | { |
585 | if (cmdparams.Length >= 5) | 561 | // What is this? The GridRegion instance will be discarded anyway, |
586 | { | 562 | // which effectively ignores any local name given with the command. |
587 | regInfo.RegionName = ""; | 563 | //if (cmdparams.Length >= 5) |
588 | for (int i = 4; i < cmdparams.Length; i++) | 564 | //{ |
589 | regInfo.RegionName += cmdparams[i] + " "; | 565 | // regInfo.RegionName = ""; |
590 | } | 566 | // for (int i = 4; i < cmdparams.Length; i++) |
567 | // regInfo.RegionName += cmdparams[i] + " "; | ||
568 | //} | ||
591 | } | 569 | } |
592 | } | 570 | } |
593 | return; | 571 | return; |
594 | } | 572 | } |
595 | else if (command.Equals("unlink-region")) | 573 | else if (command.Equals("unlink-region")) |
596 | { | 574 | { |
597 | if (cmdparams.Length < 1 || cmdparams.Length > 1) | 575 | if (cmdparams.Length < 1) |
598 | { | 576 | { |
599 | UnlinkRegionCmdUsage(); | 577 | UnlinkRegionCmdUsage(); |
600 | return; | 578 | return; |
601 | } | 579 | } |
602 | if (TryUnlinkRegion(cmdparams[0])) | 580 | string region = string.Join(" ", cmdparams); |
603 | MainConsole.Instance.Output("Successfully unlinked " + cmdparams[0]); | 581 | if (TryUnlinkRegion(region)) |
582 | MainConsole.Instance.Output("Successfully unlinked " + region); | ||
604 | else | 583 | else |
605 | MainConsole.Instance.Output("Unable to unlink " + cmdparams[0] + ", region not found."); | 584 | MainConsole.Instance.Output("Unable to unlink " + region + ", region not found."); |
606 | } | 585 | } |
607 | } | 586 | } |
608 | 587 | ||
diff --git a/OpenSim/Services/HypergridService/UserAgentService.cs b/OpenSim/Services/HypergridService/UserAgentService.cs index 3519250..12dda48 100644 --- a/OpenSim/Services/HypergridService/UserAgentService.cs +++ b/OpenSim/Services/HypergridService/UserAgentService.cs | |||
@@ -101,7 +101,7 @@ namespace OpenSim.Services.HypergridService | |||
101 | serverConfig = config.Configs["GatekeeperService"]; | 101 | serverConfig = config.Configs["GatekeeperService"]; |
102 | m_GridName = serverConfig.GetString("ExternalName", string.Empty); | 102 | m_GridName = serverConfig.GetString("ExternalName", string.Empty); |
103 | } | 103 | } |
104 | else if (!m_GridName.EndsWith("/")) | 104 | if (!m_GridName.EndsWith("/")) |
105 | m_GridName = m_GridName + "/"; | 105 | m_GridName = m_GridName + "/"; |
106 | } | 106 | } |
107 | } | 107 | } |
diff --git a/OpenSim/Services/Interfaces/IUserAccountService.cs b/OpenSim/Services/Interfaces/IUserAccountService.cs index 2c09a2e..80258d6 100644 --- a/OpenSim/Services/Interfaces/IUserAccountService.cs +++ b/OpenSim/Services/Interfaces/IUserAccountService.cs | |||
@@ -101,7 +101,7 @@ namespace OpenSim.Services.Interfaces | |||
101 | if (str != string.Empty) | 101 | if (str != string.Empty) |
102 | { | 102 | { |
103 | string[] parts = str.Split(new char[] { ';' }); | 103 | string[] parts = str.Split(new char[] { ';' }); |
104 | Dictionary<string, object> dic = new Dictionary<string, object>(); | 104 | // Dictionary<string, object> dic = new Dictionary<string, object>(); |
105 | foreach (string s in parts) | 105 | foreach (string s in parts) |
106 | { | 106 | { |
107 | string[] parts2 = s.Split(new char[] { '*' }); | 107 | string[] parts2 = s.Split(new char[] { '*' }); |
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index 1749836..93e4a8f 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -779,6 +779,8 @@ namespace OpenSim.Services.LLLoginService | |||
779 | { | 779 | { |
780 | aCircuit.ServiceURLs[kvp.Key] = kvp.Value; | 780 | aCircuit.ServiceURLs[kvp.Key] = kvp.Value; |
781 | } | 781 | } |
782 | if (!aCircuit.ServiceURLs[kvp.Key].ToString().EndsWith("/")) | ||
783 | aCircuit.ServiceURLs[kvp.Key] = aCircuit.ServiceURLs[kvp.Key] + "/"; | ||
782 | } | 784 | } |
783 | 785 | ||
784 | // New style: service keys start with SRV_; override the previous | 786 | // New style: service keys start with SRV_; override the previous |
@@ -791,6 +793,9 @@ namespace OpenSim.Services.LLLoginService | |||
791 | { | 793 | { |
792 | string keyName = serviceKey.Replace("SRV_", ""); | 794 | string keyName = serviceKey.Replace("SRV_", ""); |
793 | aCircuit.ServiceURLs[keyName] = m_LoginServerConfig.GetString(serviceKey, string.Empty); | 795 | aCircuit.ServiceURLs[keyName] = m_LoginServerConfig.GetString(serviceKey, string.Empty); |
796 | if (!aCircuit.ServiceURLs[keyName].ToString().EndsWith("/")) | ||
797 | aCircuit.ServiceURLs[keyName] = aCircuit.ServiceURLs[keyName] + "/"; | ||
798 | |||
794 | m_log.DebugFormat("[LLLOGIN SERVICE]: found new key {0} {1}", keyName, aCircuit.ServiceURLs[keyName]); | 799 | m_log.DebugFormat("[LLLOGIN SERVICE]: found new key {0} {1}", keyName, aCircuit.ServiceURLs[keyName]); |
795 | } | 800 | } |
796 | } | 801 | } |