aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/ApplicationPlugins
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/ApplicationPlugins')
-rw-r--r--OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.cs30
-rw-r--r--OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs26
-rw-r--r--OpenSim/ApplicationPlugins/Rest/Inventory/tests/Remote.cs2
3 files changed, 22 insertions, 36 deletions
diff --git a/OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.cs b/OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.cs
index e26c1d2..6e28eba 100644
--- a/OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.cs
+++ b/OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.cs
@@ -186,35 +186,5 @@ namespace OpenSim.ApplicationPlugins.LoadRegions
186 186
187 return true; 187 return true;
188 } 188 }
189
190 public void LoadRegionFromConfig(OpenSimBase openSim, ulong regionhandle)
191 {
192 m_log.Info("[LOADREGIONS]: Load Regions addin being initialised");
193
194 IRegionLoader regionLoader;
195 if (openSim.ConfigSource.Source.Configs["Startup"].GetString("region_info_source", "filesystem") == "filesystem")
196 {
197 m_log.Info("[LOADREGIONS]: Loading Region Info from filesystem");
198 regionLoader = new RegionLoaderFileSystem();
199 }
200 else
201 {
202 m_log.Info("[LOADREGIONS]: Loading Region Info from web");
203 regionLoader = new RegionLoaderWebServer();
204 }
205
206 regionLoader.SetIniConfigSource(openSim.ConfigSource.Source);
207 RegionInfo[] regionsToLoad = regionLoader.LoadRegions();
208 for (int i = 0; i < regionsToLoad.Length; i++)
209 {
210 if (regionhandle == regionsToLoad[i].RegionHandle)
211 {
212 IScene scene;
213 m_log.Debug("[LOADREGIONS]: Creating Region: " + regionsToLoad[i].RegionName + " (ThreadID: " +
214 Thread.CurrentThread.ManagedThreadId.ToString() + ")");
215 openSim.CreateRegion(regionsToLoad[i], true, out scene);
216 }
217 }
218 }
219 } 189 }
220} 190}
diff --git a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs
index 86c0ac8..535712e 100644
--- a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs
+++ b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs
@@ -844,21 +844,30 @@ namespace OpenSim.ApplicationPlugins.RemoteController
844 } 844 }
845 845
846 // Create a new estate with the name provided 846 // Create a new estate with the name provided
847 region.EstateSettings = m_application.EstateDataService.LoadEstateSettings(region.RegionID, true); 847 region.EstateSettings = m_application.EstateDataService.CreateNewEstate();
848 848
849 region.EstateSettings.EstateName = (string) requestData["estate_name"]; 849 region.EstateSettings.EstateName = (string) requestData["estate_name"];
850 region.EstateSettings.EstateOwner = userID; 850 region.EstateSettings.EstateOwner = userID;
851 // Persistence does not seem to effect the need to save a new estate 851 // Persistence does not seem to effect the need to save a new estate
852 region.EstateSettings.Save(); 852 region.EstateSettings.Save();
853
854 if (!m_application.EstateDataService.LinkRegion(region.RegionID, (int) region.EstateSettings.EstateID))
855 throw new Exception("Failed to join estate.");
853 } 856 }
854 else 857 else
855 { 858 {
856 int estateID = estateIDs[0]; 859 int estateID = estateIDs[0];
857 860
858 region.EstateSettings = m_application.EstateDataService.LoadEstateSettings(estateID); 861 region.EstateSettings = m_application.EstateDataService.LoadEstateSettings(region.RegionID, false);
859 862
860 if (!m_application.EstateDataService.LinkRegion(region.RegionID, estateID)) 863 if (region.EstateSettings.EstateID != estateID)
861 throw new Exception("Failed to join estate."); 864 {
865 // The region is already part of an estate, but not the one we want.
866 region.EstateSettings = m_application.EstateDataService.LoadEstateSettings(estateID);
867
868 if (!m_application.EstateDataService.LinkRegion(region.RegionID, estateID))
869 throw new Exception("Failed to join estate.");
870 }
862 } 871 }
863 872
864 // Create the region and perform any initial initialization 873 // Create the region and perform any initial initialization
@@ -2434,10 +2443,12 @@ namespace OpenSim.ApplicationPlugins.RemoteController
2434 /// <description>UUID of the region</description></item> 2443 /// <description>UUID of the region</description></item>
2435 /// <item><term>region_name</term> 2444 /// <item><term>region_name</term>
2436 /// <description>region name</description></item> 2445 /// <description>region name</description></item>
2437 /// <item><term>profile</term> 2446 /// <item><term>profile</term>
2438 /// <description>profile url</description></item> 2447 /// <description>profile url</description></item>
2439 /// <item><term>noassets</term> 2448 /// <item><term>noassets</term>
2440 /// <description>true if no assets should be saved</description></item> 2449 /// <description>true if no assets should be saved</description></item>
2450 /// <item><term>perm</term>
2451 /// <description>C and/or T</description></item>
2441 /// </list> 2452 /// </list>
2442 /// 2453 ///
2443 /// <code>region_uuid</code> takes precedence over 2454 /// <code>region_uuid</code> takes precedence over
@@ -2512,6 +2523,11 @@ namespace OpenSim.ApplicationPlugins.RemoteController
2512 options["noassets"] = (string)requestData["noassets"] ; 2523 options["noassets"] = (string)requestData["noassets"] ;
2513 } 2524 }
2514 2525
2526 if (requestData.Contains("perm"))
2527 {
2528 options["checkPermissions"] = (string)requestData["perm"];
2529 }
2530
2515 IRegionArchiverModule archiver = scene.RequestModuleInterface<IRegionArchiverModule>(); 2531 IRegionArchiverModule archiver = scene.RequestModuleInterface<IRegionArchiverModule>();
2516 2532
2517 if (archiver != null) 2533 if (archiver != null)
diff --git a/OpenSim/ApplicationPlugins/Rest/Inventory/tests/Remote.cs b/OpenSim/ApplicationPlugins/Rest/Inventory/tests/Remote.cs
index 1023108..b53806c 100644
--- a/OpenSim/ApplicationPlugins/Rest/Inventory/tests/Remote.cs
+++ b/OpenSim/ApplicationPlugins/Rest/Inventory/tests/Remote.cs
@@ -169,7 +169,7 @@ namespace OpenSim.ApplicationPlugins.Rest.Inventory.Tests
169 float y = Convert.ToSingle(rdata.Parameters[PARM_MOVE_Y]); 169 float y = Convert.ToSingle(rdata.Parameters[PARM_MOVE_Y]);
170 float z = Convert.ToSingle(rdata.Parameters[PARM_MOVE_Z]); 170 float z = Convert.ToSingle(rdata.Parameters[PARM_MOVE_Z]);
171 Vector3 vector = new Vector3(x, y, z); 171 Vector3 vector = new Vector3(x, y, z);
172 presence.MoveToTarget(vector, false); 172 presence.MoveToTarget(vector, false, false);
173 } 173 }
174 catch (Exception e) 174 catch (Exception e)
175 { 175 {