From b4932bda2aa5ad371174a544f90fc7a3d012e64a Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Fri, 15 Nov 2013 00:16:33 +0000 Subject: [PATCH 1/3] If a local land ID is given to the "land show" command, then output to console the full details of that parcel. Using "land show" without a land ID still outputs a summary of parcels in the region --- .../World/Land/LandManagementModule.cs | 180 ++++++++++++------ 1 file changed, 126 insertions(+), 54 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index 1789d6d223..73c4d6ce38 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs @@ -42,7 +42,6 @@ using OpenSim.Framework.Capabilities; using OpenSim.Framework.Console; using OpenSim.Framework.Servers; using OpenSim.Framework.Servers.HttpServer; -using OpenSim.Region.CoreModules.Framework.InterfaceCommander; using OpenSim.Region.Framework.Interfaces; using OpenSim.Region.Framework.Scenes; using OpenSim.Region.Physics.Manager; @@ -70,7 +69,6 @@ namespace OpenSim.Region.CoreModules.World.Land private LandChannel landChannel; private Scene m_scene; - protected Commander m_commander = new Commander("land"); protected IUserManagement m_userManager; protected IPrimCountModule m_primCountModule; @@ -140,14 +138,13 @@ namespace OpenSim.Region.CoreModules.World.Land m_scene.EventManager.OnIncomingLandDataFromStorage += EventManagerOnIncomingLandDataFromStorage; m_scene.EventManager.OnSetAllowForcefulBan += EventManagerOnSetAllowedForcefulBan; m_scene.EventManager.OnRegisterCaps += EventManagerOnRegisterCaps; - m_scene.EventManager.OnPluginConsole += EventManagerOnPluginConsole; lock (m_scene) { m_scene.LandChannel = (ILandChannel)landChannel; } - InstallInterfaces(); + RegisterCommands(); } public void RegionLoaded(Scene scene) @@ -159,10 +156,7 @@ namespace OpenSim.Region.CoreModules.World.Land public void RemoveRegion(Scene scene) { - // TODO: Also release other event manager listeners here - - m_scene.EventManager.OnPluginConsole -= EventManagerOnPluginConsole; - m_scene.UnregisterModuleCommander(m_commander.Name); + // TODO: Release event manager listeners here } // private bool OnVerifyUserConnection(ScenePresence scenePresence, out string reason) @@ -170,30 +164,7 @@ namespace OpenSim.Region.CoreModules.World.Land // ILandObject nearestParcel = m_scene.GetNearestAllowedParcel(scenePresence.UUID, scenePresence.AbsolutePosition.X, scenePresence.AbsolutePosition.Y); // reason = "You are not allowed to enter this sim."; // return nearestParcel != null; -// } - - /// - /// Processes commandline input. Do not call directly. - /// - /// Commandline arguments - protected void EventManagerOnPluginConsole(string[] args) - { - if (args[0] == "land") - { - if (args.Length == 1) - { - m_commander.ProcessConsoleCommand("help", new string[0]); - return; - } - - string[] tmpArgs = new string[args.Length - 2]; - int i; - for (i = 2; i < args.Length; i++) - tmpArgs[i - 2] = args[i]; - - m_commander.ProcessConsoleCommand(args[1], tmpArgs); - } - } +// } void EventManagerOnNewClient(IClientAPI client) { @@ -1872,44 +1843,84 @@ namespace OpenSim.Region.CoreModules.World.Land m_Dialog.SendAlertToUser(remoteClient, "You are not allowed to set your home location in this parcel."); } - - protected void InstallInterfaces() + protected void RegisterCommands() { - Command clearCommand - = new Command("clear", CommandIntentions.COMMAND_HAZARDOUS, ClearCommand, "Clears all the parcels from the region."); - Command showCommand - = new Command("show", CommandIntentions.COMMAND_STATISTICAL, ShowParcelsCommand, "Shows all parcels on the region."); + ICommands commands = MainConsole.Instance.Commands; - m_commander.RegisterCommand("clear", clearCommand); - m_commander.RegisterCommand("show", showCommand); + commands.AddCommand( + "Land", false, "land clear", + "land clear", + "Clear all the parcels from the region.", + "Command will ask for confirmation before proceeding.", + HandleClearCommand); - // Add this to our scene so scripts can call these functions - m_scene.RegisterModuleCommander(m_commander); + commands.AddCommand( + "Land", false, "land show", + "land show []", + "Show information about the parcels on the region.", + "If no local land ID is given, then summary information about all the parcels is shown.\n" + + "If a local land ID is given then full information about that parcel is shown.", + HandleShowCommand); } - protected void ClearCommand(Object[] args) + protected void HandleClearCommand(string module, string[] args) { + if (!(MainConsole.Instance.ConsoleScene == null || MainConsole.Instance.ConsoleScene == m_scene)) + return; + string response = MainConsole.Instance.CmdPrompt( string.Format( - "Are you sure that you want to clear all land parcels from {0} (y or n)", - m_scene.RegionInfo.RegionName), + "Are you sure that you want to clear all land parcels from {0} (y or n)", m_scene.Name), "n"); if (response.ToLower() == "y") { Clear(true); - MainConsole.Instance.OutputFormat("Cleared all parcels from {0}", m_scene.RegionInfo.RegionName); + MainConsole.Instance.OutputFormat("Cleared all parcels from {0}", m_scene.Name); } else { - MainConsole.Instance.OutputFormat("Aborting clear of all parcels from {0}", m_scene.RegionInfo.RegionName); + MainConsole.Instance.OutputFormat("Aborting clear of all parcels from {0}", m_scene.Name); } } - protected void ShowParcelsCommand(Object[] args) + protected void HandleShowCommand(string module, string[] args) { - StringBuilder report = new StringBuilder(); - + if (!(MainConsole.Instance.ConsoleScene == null || MainConsole.Instance.ConsoleScene == m_scene)) + return; + + StringBuilder report = new StringBuilder(); + + if (args.Length <= 2) + { + AppendParcelsSummaryReport(report); + } + else + { + int landLocalId; + + if (!ConsoleUtil.TryParseConsoleInt(MainConsole.Instance, args[2], out landLocalId)) + return; + + ILandObject lo; + + lock (m_landList) + { + if (!m_landList.TryGetValue(landLocalId, out lo)) + { + MainConsole.Instance.OutputFormat("No parcel found with local ID {0}", landLocalId); + return; + } + } + + AppendParcelReport(report, lo); + } + + MainConsole.Instance.Output(report.ToString()); + } + + private void AppendParcelsSummaryReport(StringBuilder report) + { report.AppendFormat("Land information for {0}\n", m_scene.RegionInfo.RegionName); report.AppendFormat( "{0,-20} {1,-10} {2,-9} {3,-18} {4,-18} {5,-20}\n", @@ -1931,8 +1942,69 @@ namespace OpenSim.Region.CoreModules.World.Land ld.Name, ld.LocalID, ld.Area, lo.StartPoint, lo.EndPoint, m_userManager.GetUserName(ld.OwnerID)); } } - - MainConsole.Instance.Output(report.ToString()); - } + } + + private void AppendParcelReport(StringBuilder report, ILandObject lo) + { + LandData ld = lo.LandData; + + ConsoleDisplayList cdl = new ConsoleDisplayList(); + cdl.AddRow("Parcel name", ld.Name); + cdl.AddRow("Local ID", ld.LocalID); + cdl.AddRow("Description", ld.Description); + cdl.AddRow("Snapshot ID", ld.SnapshotID); + cdl.AddRow("Area", ld.Area); + cdl.AddRow("Starts", lo.StartPoint); + cdl.AddRow("Ends", lo.EndPoint); + cdl.AddRow("AABB Min", ld.AABBMin); + cdl.AddRow("AABB Max", ld.AABBMax); + + cdl.AddRow("Owner", m_userManager.GetUserName(ld.OwnerID)); + cdl.AddRow("Is group owned?", ld.IsGroupOwned); + cdl.AddRow("GroupID", ld.GroupID); + + cdl.AddRow("Status", ld.Status); + cdl.AddRow("Flags", (ParcelFlags)ld.Flags); + + cdl.AddRow("Landing Type", (LandingType)ld.LandingType); + cdl.AddRow("User Location", ld.UserLocation); + cdl.AddRow("User look at", ld.UserLookAt); + + cdl.AddRow("Other clean time", ld.OtherCleanTime); + + cdl.AddRow("Max Prims", lo.GetParcelMaxPrimCount()); + IPrimCounts pc = lo.PrimCounts; + cdl.AddRow("Owner Prims", pc.Owner); + cdl.AddRow("Group Prims", pc.Group); + cdl.AddRow("Other Prims", pc.Others); + cdl.AddRow("Selected Prims", pc.Selected); + cdl.AddRow("Total Prims", pc.Total); + + cdl.AddRow("Music URL", ld.MusicURL); + cdl.AddRow("Obscure Music", ld.ObscureMusic); + + cdl.AddRow("Media ID", ld.MediaID); + cdl.AddRow("Media Autoscale", Convert.ToBoolean(ld.MediaAutoScale)); + cdl.AddRow("Media URL", ld.MediaURL); + cdl.AddRow("Media Type", ld.MediaType); + cdl.AddRow("Media Description", ld.MediaDescription); + cdl.AddRow("Media Width", ld.MediaWidth); + cdl.AddRow("Media Height", ld.MediaHeight); + cdl.AddRow("Media Loop", ld.MediaLoop); + cdl.AddRow("Obscure Media", ld.ObscureMedia); + + cdl.AddRow("Parcel Category", ld.Category); + + cdl.AddRow("Claim Date", ld.ClaimDate); + cdl.AddRow("Claim Price", ld.ClaimPrice); + cdl.AddRow("Pass Hours", ld.PassHours); + cdl.AddRow("Pass Price", ld.PassPrice); + + cdl.AddRow("Auction ID", ld.AuctionID); + cdl.AddRow("Authorized Buyer ID", ld.AuthBuyerID); + cdl.AddRow("Sale Price", ld.SalePrice); + + cdl.AddToStringBuilder(report); + } } -} +} \ No newline at end of file From 7cab41f4223b7febd3fdd42fa7cfefef25e4a9c9 Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Fri, 15 Nov 2013 21:45:08 +0000 Subject: [PATCH 2/3] refactor: replace verbose checks with String.IsNullOrEmpty where applicable. Thanks to Kira for this patch from http://opensimulator.org/mantis/view.php?id=6845 --- CONTRIBUTORS.txt | 1 + .../Addons/Groups/Hypergrid/GroupsServiceHGConnector.cs | 4 ++-- .../Addons/Groups/Remote/GroupsServiceRemoteConnector.cs | 2 +- .../Capabilities/Handlers/GetTexture/GetTextureHandler.cs | 2 +- OpenSim/Framework/Configuration/XML/XmlConfiguration.cs | 2 +- OpenSim/Framework/InventoryItemBase.cs | 2 +- OpenSim/Framework/Monitoring/Stats/Stat.cs | 6 +++--- .../Serialization/External/UserInventoryItemSerializer.cs | 2 +- OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | 2 +- OpenSim/Framework/TaskInventoryItem.cs | 2 +- OpenSim/Framework/WebUtil.cs | 2 +- OpenSim/Region/Application/OpenSimBase.cs | 2 +- .../Inventory/Archiver/InventoryArchiveReadRequest.cs | 4 ++-- .../Framework/InventoryAccess/HGAssetMapper.cs | 2 +- .../Framework/UserManagement/UserManagementModule.cs | 4 ++-- .../Scripting/HttpRequest/ScriptsHttpRequests.cs | 6 +++--- .../Scripting/LoadImageURL/LoadImageURLModule.cs | 4 ++-- .../Region/CoreModules/Scripting/XMLRPC/XMLRPCModule.cs | 2 +- .../ServiceConnectorsOut/Inventory/HGInventoryBroker.cs | 2 +- .../CoreModules/World/Archiver/ArchiveReadRequest.cs | 4 ++-- OpenSim/Region/DataSnapshot/DataSnapshotManager.cs | 2 +- OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 2 +- .../Scenes/Serialization/SceneObjectSerializer.cs | 4 ++-- .../Region/OptionalModules/Avatar/Chat/ChannelState.cs | 2 +- .../Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs | 8 ++++---- .../XmlRpcGroups/SimianGroupsServicesConnectorModule.cs | 5 ++--- .../XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs | 5 ++--- .../Shared/Api/Implementation/Plugins/SensorRepeat.cs | 4 ++-- OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs | 2 +- OpenSim/Services/HypergridService/HGInventoryService.cs | 2 +- 30 files changed, 46 insertions(+), 47 deletions(-) diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 9ae7a319f2..ef84315cc7 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -109,6 +109,7 @@ what it is today. * Kayne * Kevin Cozens * kinoc (Daxtron Labs) +* Kira * Kitto Flora * KittyLiu * Kurt Taylor (IBM) diff --git a/OpenSim/Addons/Groups/Hypergrid/GroupsServiceHGConnector.cs b/OpenSim/Addons/Groups/Hypergrid/GroupsServiceHGConnector.cs index 59fec6fa38..653dbac8bd 100644 --- a/OpenSim/Addons/Groups/Hypergrid/GroupsServiceHGConnector.cs +++ b/OpenSim/Addons/Groups/Hypergrid/GroupsServiceHGConnector.cs @@ -101,7 +101,7 @@ namespace OpenSim.Groups Dictionary sendData = new Dictionary(); if (GroupID != UUID.Zero) sendData["GroupID"] = GroupID.ToString(); - if (GroupName != null && GroupName != string.Empty) + if (!string.IsNullOrEmpty(GroupName)) sendData["Name"] = GroupsDataUtils.Sanitize(GroupName); sendData["RequestingAgentID"] = RequestingAgentID; @@ -275,7 +275,7 @@ namespace OpenSim.Groups //m_log.DebugFormat("[XXX]: reply was {0}", reply); - if (reply == string.Empty || reply == null) + if (string.IsNullOrEmpty(reply)) return null; Dictionary replyData = ServerUtils.ParseXmlResponse( diff --git a/OpenSim/Addons/Groups/Remote/GroupsServiceRemoteConnector.cs b/OpenSim/Addons/Groups/Remote/GroupsServiceRemoteConnector.cs index 161ca0c4cc..ed419785e8 100644 --- a/OpenSim/Addons/Groups/Remote/GroupsServiceRemoteConnector.cs +++ b/OpenSim/Addons/Groups/Remote/GroupsServiceRemoteConnector.cs @@ -120,7 +120,7 @@ namespace OpenSim.Groups Dictionary sendData = new Dictionary(); if (GroupID != UUID.Zero) sendData["GroupID"] = GroupID.ToString(); - if (GroupName != null && GroupName != string.Empty) + if (!string.IsNullOrEmpty(GroupName)) sendData["Name"] = GroupsDataUtils.Sanitize(GroupName); sendData["RequestingAgentID"] = RequestingAgentID; diff --git a/OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs b/OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs index 789bf2b33d..7b3124af57 100644 --- a/OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs +++ b/OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs @@ -85,7 +85,7 @@ namespace OpenSim.Capabilities.Handlers // m_log.DebugFormat("[GETTEXTURE]: Received request for texture id {0}", textureID); string[] formats; - if (format != null && format != string.Empty) + if (!string.IsNullOrEmpty(format)) { formats = new string[1] { format.ToLower() }; } diff --git a/OpenSim/Framework/Configuration/XML/XmlConfiguration.cs b/OpenSim/Framework/Configuration/XML/XmlConfiguration.cs index 43162fc227..3152a7d4d6 100644 --- a/OpenSim/Framework/Configuration/XML/XmlConfiguration.cs +++ b/OpenSim/Framework/Configuration/XML/XmlConfiguration.cs @@ -121,7 +121,7 @@ namespace OpenSim.Framework.Configuration.XML public void Commit() { - if (fileName == null || fileName == String.Empty) + if (string.IsNullOrEmpty(fileName)) return; if (!Directory.Exists(Util.configDir())) diff --git a/OpenSim/Framework/InventoryItemBase.cs b/OpenSim/Framework/InventoryItemBase.cs index 3d45e76698..558dfd0e4c 100644 --- a/OpenSim/Framework/InventoryItemBase.cs +++ b/OpenSim/Framework/InventoryItemBase.cs @@ -122,7 +122,7 @@ namespace OpenSim.Framework { get { - if (m_creatorData != null && m_creatorData != string.Empty) + if (!string.IsNullOrEmpty(m_creatorData)) return m_creatorId + ';' + m_creatorData; else return m_creatorId; diff --git a/OpenSim/Framework/Monitoring/Stats/Stat.cs b/OpenSim/Framework/Monitoring/Stats/Stat.cs index 2b34493c5f..e095801f2a 100644 --- a/OpenSim/Framework/Monitoring/Stats/Stat.cs +++ b/OpenSim/Framework/Monitoring/Stats/Stat.cs @@ -231,7 +231,7 @@ namespace OpenSim.Framework.Monitoring Container, ShortName, Value, - UnitName == null || UnitName == "" ? "" : string.Format(" {0}", UnitName)); + string.IsNullOrEmpty(UnitName) ? "" : string.Format(" {0}", UnitName)); AppendMeasuresOfInterest(sb); @@ -316,9 +316,9 @@ namespace OpenSim.Framework.Monitoring sb.AppendFormat( ", {0:0.##}{1}/s, {2:0.##}{3}/s", lastChangeOverTime, - UnitName == null || UnitName == "" ? "" : string.Format(" {0}", UnitName), + string.IsNullOrEmpty(UnitName) ? "" : string.Format(" {0}", UnitName), averageChangeOverTime, - UnitName == null || UnitName == "" ? "" : string.Format(" {0}", UnitName)); + string.IsNullOrEmpty(UnitName) ? "" : string.Format(" {0}", UnitName)); } } } diff --git a/OpenSim/Framework/Serialization/External/UserInventoryItemSerializer.cs b/OpenSim/Framework/Serialization/External/UserInventoryItemSerializer.cs index 88f9581afd..f2a6b8b87a 100644 --- a/OpenSim/Framework/Serialization/External/UserInventoryItemSerializer.cs +++ b/OpenSim/Framework/Serialization/External/UserInventoryItemSerializer.cs @@ -277,7 +277,7 @@ namespace OpenSim.Framework.Serialization.External writer.WriteStartElement("GroupOwned"); writer.WriteString(inventoryItem.GroupOwned.ToString()); writer.WriteEndElement(); - if (options.ContainsKey("creators") && inventoryItem.CreatorData != null && inventoryItem.CreatorData != string.Empty) + if (options.ContainsKey("creators") && !string.IsNullOrEmpty(inventoryItem.CreatorData)) writer.WriteElementString("CreatorData", inventoryItem.CreatorData); else if (options.ContainsKey("home")) { diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs index 76b4257f8f..e1ae74ee73 100644 --- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs +++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs @@ -785,7 +785,7 @@ namespace OpenSim.Framework.Servers.HttpServer "[BASE HTTP SERVER]: HTTP IN {0} :{1} {2} content type handler {3} {4} from {5}", RequestNumber, Port, - (request.ContentType == null || request.ContentType == "") ? "not set" : request.ContentType, + string.IsNullOrEmpty(request.ContentType) ? "not set" : request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint); diff --git a/OpenSim/Framework/TaskInventoryItem.cs b/OpenSim/Framework/TaskInventoryItem.cs index a06f8e73ef..307cb75832 100644 --- a/OpenSim/Framework/TaskInventoryItem.cs +++ b/OpenSim/Framework/TaskInventoryItem.cs @@ -124,7 +124,7 @@ namespace OpenSim.Framework { get { - if (_creatorData != null && _creatorData != string.Empty) + if (!string.IsNullOrEmpty(_creatorData)) return _creatorID.ToString() + ';' + _creatorData; else return _creatorID.ToString(); diff --git a/OpenSim/Framework/WebUtil.cs b/OpenSim/Framework/WebUtil.cs index 706b33ff4a..bcf6af8849 100644 --- a/OpenSim/Framework/WebUtil.cs +++ b/OpenSim/Framework/WebUtil.cs @@ -720,7 +720,7 @@ namespace OpenSim.Framework /// public static string[] GetPreferredImageTypes(string accept) { - if (accept == null || accept == string.Empty) + if (string.IsNullOrEmpty(accept)) return new string[0]; string[] types = accept.Split(new char[] { ',' }); diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index b032e7fe97..308638c46e 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs @@ -908,7 +908,7 @@ namespace OpenSim regInfo.EstateSettings = EstateDataService.LoadEstateSettings(regInfo.RegionID, true); string newName; - if (estateName != null && estateName != "") + if (!string.IsNullOrEmpty(estateName)) newName = estateName; else newName = MainConsole.Instance.CmdPrompt("New estate name", regInfo.EstateSettings.EstateName); diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs index 31c42d87d0..f7057fef2b 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs @@ -421,7 +421,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver item.CreatorId = ospResolvedId.ToString(); item.CreatorData = string.Empty; } - else if (item.CreatorData == null || item.CreatorData == String.Empty) + else if (string.IsNullOrEmpty(item.CreatorData)) { item.CreatorId = m_userInfo.PrincipalID.ToString(); // item.CreatorIdAsUuid = new UUID(item.CreatorId); @@ -522,7 +522,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver foreach (SceneObjectGroup sog in sceneObjects) foreach (SceneObjectPart sop in sog.Parts) - if (sop.CreatorData == null || sop.CreatorData == "") + if (string.IsNullOrEmpty(sop.CreatorData)) sop.CreatorID = m_creatorIdForAssetId[assetId]; if (coa != null) diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs index 144895ccfc..b7a4d1ac1c 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs @@ -174,7 +174,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess private void AdjustIdentifiers(AssetMetadata meta) { - if (meta.CreatorID != null && meta.CreatorID != string.Empty) + if (!string.IsNullOrEmpty(meta.CreatorID)) { UUID uuid = UUID.Zero; UUID.TryParse(meta.CreatorID, out uuid); diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs index d3926ccbd5..3fb51958e9 100644 --- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs +++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs @@ -466,7 +466,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement return userdata.ServerURLs[serverType].ToString(); } - if (userdata.HomeURL != null && userdata.HomeURL != string.Empty) + if (!string.IsNullOrEmpty(userdata.HomeURL)) { //m_log.DebugFormat( // "[USER MANAGEMENT MODULE]: Did not find url type {0} so requesting urls from '{1}' for {2}", @@ -552,7 +552,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement if (oldUser != null) { - if (creatorData == null || creatorData == String.Empty) + if (string.IsNullOrEmpty(creatorData)) { //ignore updates without creator data return; diff --git a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs index 1a62405078..c3a8afdf93 100644 --- a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs +++ b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs @@ -460,9 +460,9 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest Request.Headers.Add(HttpCustomHeaders[i], HttpCustomHeaders[i+1]); } - if (proxyurl != null && proxyurl.Length > 0) + if (!string.IsNullOrEmpty(proxyurl)) { - if (proxyexcepts != null && proxyexcepts.Length > 0) + if (!string.IsNullOrEmpty(proxyexcepts)) { string[] elist = proxyexcepts.Split(';'); Request.Proxy = new WebProxy(proxyurl, true, elist); @@ -483,7 +483,7 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest } // Encode outbound data - if (OutboundBody != null && OutboundBody.Length > 0) + if (!string.IsNullOrEmpty(OutboundBody)) { byte[] data = Util.UTF8.GetBytes(OutboundBody); diff --git a/OpenSim/Region/CoreModules/Scripting/LoadImageURL/LoadImageURLModule.cs b/OpenSim/Region/CoreModules/Scripting/LoadImageURL/LoadImageURLModule.cs index 65737fa693..baf9f2f4f2 100644 --- a/OpenSim/Region/CoreModules/Scripting/LoadImageURL/LoadImageURLModule.cs +++ b/OpenSim/Region/CoreModules/Scripting/LoadImageURL/LoadImageURLModule.cs @@ -161,9 +161,9 @@ namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL { WebRequest request = HttpWebRequest.Create(url); - if (m_proxyurl != null && m_proxyurl.Length > 0) + if (!string.IsNullOrEmpty(m_proxyurl)) { - if (m_proxyexcepts != null && m_proxyexcepts.Length > 0) + if (!string.IsNullOrEmpty(m_proxyexcepts)) { string[] elist = m_proxyexcepts.Split(';'); request.Proxy = new WebProxy(m_proxyurl, true, elist); diff --git a/OpenSim/Region/CoreModules/Scripting/XMLRPC/XMLRPCModule.cs b/OpenSim/Region/CoreModules/Scripting/XMLRPC/XMLRPCModule.cs index cbffca7016..c6e05b1f6a 100644 --- a/OpenSim/Region/CoreModules/Scripting/XMLRPC/XMLRPCModule.cs +++ b/OpenSim/Region/CoreModules/Scripting/XMLRPC/XMLRPCModule.cs @@ -677,7 +677,7 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC // if not, use as method name UUID parseUID; string mName = "llRemoteData"; - if ((Channel != null) && (Channel != "")) + if (!string.IsNullOrEmpty(Channel)) if (!UUID.TryParse(Channel, out parseUID)) mName = Channel; else diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs index 58576d1056..77a3c82efb 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs @@ -259,7 +259,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory if (sp == null) { inventoryURL = UserManagementModule.GetUserServerURL(userID, "InventoryServerURI"); - if (inventoryURL != null && inventoryURL != string.Empty) + if (!string.IsNullOrEmpty(inventoryURL)) { inventoryURL = inventoryURL.Trim(new char[] { '/' }); m_InventoryURLs.Add(userID, inventoryURL); diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs index 32d245f0fe..d451b9e423 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs @@ -464,7 +464,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver // or creator data is present. Otherwise, use the estate owner instead. foreach (SceneObjectPart part in sceneObject.Parts) { - if (part.CreatorData == null || part.CreatorData == string.Empty) + if (string.IsNullOrEmpty(part.CreatorData)) { if (!ResolveUserUuid(scene, part.CreatorID)) part.CreatorID = scene.RegionInfo.EstateSettings.EstateOwner; @@ -498,7 +498,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver kvp.Value.OwnerID = scene.RegionInfo.EstateSettings.EstateOwner; } - if (kvp.Value.CreatorData == null || kvp.Value.CreatorData == string.Empty) + if (string.IsNullOrEmpty(kvp.Value.CreatorData)) { if (!ResolveUserUuid(scene, kvp.Value.CreatorID)) kvp.Value.CreatorID = scene.RegionInfo.EstateSettings.EstateOwner; diff --git a/OpenSim/Region/DataSnapshot/DataSnapshotManager.cs b/OpenSim/Region/DataSnapshot/DataSnapshotManager.cs index dd48dd5c2b..0c0a7aafd7 100644 --- a/OpenSim/Region/DataSnapshot/DataSnapshotManager.cs +++ b/OpenSim/Region/DataSnapshot/DataSnapshotManager.cs @@ -307,7 +307,7 @@ namespace OpenSim.Region.DataSnapshot XmlNode regiondata = requestedSnap.CreateNode(XmlNodeType.Element, "regiondata", ""); try { - if (regionName == null || regionName == "") + if (string.IsNullOrEmpty(regionName)) { XmlNode timerblock = requestedSnap.CreateNode(XmlNodeType.Element, "expire", ""); timerblock.InnerText = m_period.ToString(); diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 9e6c25de7e..dcbb509b92 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs @@ -473,7 +473,7 @@ namespace OpenSim.Region.Framework.Scenes { get { - if (CreatorData != null && CreatorData != string.Empty) + if (!string.IsNullOrEmpty(CreatorData)) return CreatorID.ToString() + ';' + CreatorData; else return CreatorID.ToString(); diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs index 3ea936cc00..f07dee959a 100644 --- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs +++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs @@ -1223,7 +1223,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization WriteUUID(writer, "CreatorID", sop.CreatorID, options); - if (sop.CreatorData != null && sop.CreatorData != string.Empty) + if (!string.IsNullOrEmpty(sop.CreatorData)) writer.WriteElementString("CreatorData", sop.CreatorData); else if (options.ContainsKey("home")) { @@ -1396,7 +1396,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization WriteUUID(writer, "CreatorID", item.CreatorID, options); - if (item.CreatorData != null && item.CreatorData != string.Empty) + if (!string.IsNullOrEmpty(item.CreatorData)) writer.WriteElementString("CreatorData", item.CreatorData); else if (options.ContainsKey("home")) { diff --git a/OpenSim/Region/OptionalModules/Avatar/Chat/ChannelState.cs b/OpenSim/Region/OptionalModules/Avatar/Chat/ChannelState.cs index 5a37fadcc2..b5d9fda3e6 100644 --- a/OpenSim/Region/OptionalModules/Avatar/Chat/ChannelState.cs +++ b/OpenSim/Region/OptionalModules/Avatar/Chat/ChannelState.cs @@ -461,7 +461,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Chat string result = instr; - if (result == null || result.Length == 0) + if (string.IsNullOrEmpty(result)) return result; // Repeatedly scan the string until all possible diff --git a/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs b/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs index cdab116fbe..b4fae9d2ac 100644 --- a/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs @@ -822,11 +822,11 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.VivoxVoice { string requrl = String.Format(m_vivoxChannelPath, m_vivoxServer, "create", channelId, m_authToken); - if (parent != null && parent != String.Empty) + if (!string.IsNullOrEmpty(parent)) { requrl = String.Format("{0}&chan_parent={1}", requrl, parent); } - if (description != null && description != String.Empty) + if (!string.IsNullOrEmpty(description)) { requrl = String.Format("{0}&chan_desc={1}", requrl, description); } @@ -862,7 +862,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.VivoxVoice // requrl = String.Format("{0}&chan_parent={1}", requrl, parent); // } - if (description != null && description != String.Empty) + if (!string.IsNullOrEmpty(description)) { requrl = String.Format("{0}&chan_desc={1}", requrl, description); } @@ -1047,7 +1047,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.VivoxVoice private XmlElement VivoxDeleteChannel(string parent, string channelid) { string requrl = String.Format(m_vivoxChannelDel, m_vivoxServer, "delete", channelid, m_authToken); - if (parent != null && parent != String.Empty) + if (!string.IsNullOrEmpty(parent)) { requrl = String.Format("{0}&chan_parent={1}", requrl, parent); } diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs index 7bae8f74f7..8095b28f5e 100644 --- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs @@ -212,8 +212,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups m_log.InfoFormat("[SIMIAN-GROUPS-CONNECTOR]: Initializing {0}", this.Name); m_groupsServerURI = groupsConfig.GetString("GroupsServerURI", string.Empty); - if ((m_groupsServerURI == null) || - (m_groupsServerURI == string.Empty)) + if (string.IsNullOrEmpty(m_groupsServerURI)) { m_log.ErrorFormat("Please specify a valid Simian Server for GroupsServerURI in OpenSim.ini, [Groups]"); m_connectorEnabled = false; @@ -438,7 +437,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups return null; } } - else if ((groupName != null) && (groupName != string.Empty)) + else if (!string.IsNullOrEmpty(groupName)) { if (!SimianGetFirstGenericEntry("Group", groupName, out groupID, out GroupInfoMap)) { diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs index 71b24aca8c..e28d0c2da3 100644 --- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs @@ -168,8 +168,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups m_log.DebugFormat("[XMLRPC-GROUPS-CONNECTOR]: Initializing {0}", this.Name); m_groupsServerURI = groupsConfig.GetString("GroupsServerURI", string.Empty); - if ((m_groupsServerURI == null) || - (m_groupsServerURI == string.Empty)) + if (string.IsNullOrEmpty(m_groupsServerURI)) { m_log.ErrorFormat("Please specify a valid URL for GroupsServerURI in OpenSim.ini, [Groups]"); m_connectorEnabled = false; @@ -354,7 +353,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups { param["GroupID"] = GroupID.ToString(); } - if ((GroupName != null) && (GroupName != string.Empty)) + if (!string.IsNullOrEmpty(GroupName)) { param["Name"] = GroupName.ToString(); } diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs index 6e74227782..64dc2e22ec 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs @@ -367,7 +367,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Plugins Vector3 ZeroVector = new Vector3(0, 0, 0); - bool nameSearch = (ts.name != null && ts.name != ""); + bool nameSearch = !string.IsNullOrEmpty(ts.name); foreach (EntityBase ent in Entities) { @@ -605,7 +605,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Plugins return sensedEntities; senseEntity(sp); } - else if (ts.name != null && ts.name != "") + else if (!string.IsNullOrEmpty(ts.name)) { ScenePresence sp; // Try lookup by name will return if/when found diff --git a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs index 87f7189652..a1b8d8558c 100644 --- a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs +++ b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs @@ -618,7 +618,7 @@ namespace SecondLife // error log. if (results.Errors.Count > 0) { - if (!retried && (results.Errors[0].FileName == null || results.Errors[0].FileName == String.Empty) && + if (!retried && string.IsNullOrEmpty(results.Errors[0].FileName) && results.Errors[0].Line == 0) { // System.Console.WriteLine("retrying failed compilation"); diff --git a/OpenSim/Services/HypergridService/HGInventoryService.cs b/OpenSim/Services/HypergridService/HGInventoryService.cs index 326e68d65d..3233caf704 100644 --- a/OpenSim/Services/HypergridService/HGInventoryService.cs +++ b/OpenSim/Services/HypergridService/HGInventoryService.cs @@ -298,7 +298,7 @@ namespace OpenSim.Services.HypergridService UserAccount user = m_Cache.GetUser(it.CreatorId); // Adjust the creator data - if (user != null && it != null && (it.CreatorData == null || it.CreatorData == string.Empty)) + if (user != null && it != null && string.IsNullOrEmpty(it.CreatorData)) it.CreatorData = m_HomeURL + ";" + user.FirstName + " " + user.LastName; } return it; From f63fd81a686ed1ef33d524e28d511ad991b8dbad Mon Sep 17 00:00:00 2001 From: dahlia Date: Fri, 15 Nov 2013 14:40:38 -0800 Subject: [PATCH 3/3] update libomv to 1538d3088e79ff0a9abea6905b487755b6890a85 in hope that it fixes some bulletsim issues on linux --- bin/OpenMetaverse.StructuredData.dll | Bin 106496 -> 106496 bytes bin/OpenMetaverse.dll | Bin 1806336 -> 1806336 bytes bin/OpenMetaverseTypes.dll | Bin 110592 -> 110592 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bin/OpenMetaverse.StructuredData.dll b/bin/OpenMetaverse.StructuredData.dll index 8b920bd686af9ce1878b16aff092bd42ab3b5303..d980531e18d08cdd5c971bd110479c3e4705cd94 100755 GIT binary patch literal 106496 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 Oz>EZDB=G;H1pWt+xKmI7 literal 106496 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 delta 233 zcmZozkk_yvZ$bxiCQEf=cWXCeYd2GCH*;$@OKUf4Yd2eKH+yS0M{74{Yd2SGH+O3{ zPir@CYd2qOH-BrlKx?;PYqwBqw{UB>NNcy~)^4%(xlCKy+C}Dx0kQaYk$Dnxxm65Z z%$*I*%^h_ujGUZwO^i*AbuEp}40X*6&0O6K91Sf^4b0oGu9Vn*b*1F?4+2%F>K!SCdECdme zO~R)J1Y1EX;__6cCGI;aC<=9{2#r?MYH6$0S|7E=_dnmglS~l%`ug7Q<@d|E=bZ1X z-+s@XW$$at-q$v)QlIW`6#U)6lmooI$S;c69KJN3Sk789 za;Bn{{?5WbSL}-8n4)Aqq$o`MnGH!y^%Q2Y6=F%*2l@&{aV?B|Al5{~;yUBB*6Tq> z7X&@)CP3Jw+O$B>W2^*I3*;I%&@l(dt&Tx)m+g zQ-jn~gVZU=3dB#Y%F9m*>{M}ykHVACjWv;6HbG2|Ob5O_GNbiI_z$SIT(jF8GmRu; zhQ)GrvkEMhnaEI5qCUnG4JJk+ghd*P?8;((BH+M?##V!4tO00T3vg{jQT)}KavX!+ zPh3-eC0i#xD_`wfkG6#u*c^+TiwqiQW4%~YF_EnoZ&geMERCK87>iCo;GNOg?50GZ zGK0A`kd|9rWVDOQs@u*Y(#88@B8|QfJWy^mNl{x`H$`pfw$wJit($BYp6VrVw7mKO z!0MXY0AHzD&sHR64!De0-vr%->Cjy^3c-@4g%|p5PRX#<&$L)x+f299MwIw`;2e(> zbN4@-IdQaPCgu#fkGGzUnVaSa1S@WLxOl_Q(Q7RmVJ{{C8g}*~wb;#Iy7l$*b81KE zf!kuYfNVJ*6Tr9?n4a|=PWH*1#;J;;MN)K!{STD&oL=U{^QYZg(gDZ3iPnul=sey; z6Eca@yf->T`_SkBtbVp#%i?j8U29U=JWkRUmBZsCZ&Ai3@%hj|{bm?-X|dbz$cb$M z)EbVWQ*zf~@-Vj^;Bi{OrjFjry57sW-pjfU>vM)JU9=SjBe@1wl=8?%-tse$QE#6U z+8sa|w*f38mgF1TfhA>cZOH28PqcHeh+VG>8vAaezvin5o$l>NjIX#%2vQcJR8)bpHQ5IOwpvOdLgS;Q+nqdq za$&$^o7+x4>D~Y%>6`EyY$~!lD!t=L$KC+F-lIa#rRNS;n*CO{V+s%lk5aSv3z7a4~wniDoe0d z%_T$aYfTE1nj|a=)A�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 V#%A_aCa;?~;JuZ7oY_~W{};H6I?@0D