Fixed a few things pertaining to interfacing with the estate service. Specifically, StoreEstateSettings was not being used anywhere; instead EstatSetting.Save was being called, but that method is a trigger to the DB-layer code directly, which, besides being wrong, was making it impossible to replace the service with a remote connector.
Also added more packing/unpacking code.bullet-2.82
parent
eaf595c008
commit
2ff9ea3f80
|
@ -39,6 +39,7 @@ using OpenSim.Region.CoreModules.Avatar.InstantMessage;
|
||||||
using OpenSim.Region.CoreModules.Scripting.DynamicTexture;
|
using OpenSim.Region.CoreModules.Scripting.DynamicTexture;
|
||||||
using OpenSim.Region.CoreModules.Scripting.LoadImageURL;
|
using OpenSim.Region.CoreModules.Scripting.LoadImageURL;
|
||||||
using OpenSim.Region.CoreModules.Scripting.XMLRPC;
|
using OpenSim.Region.CoreModules.Scripting.XMLRPC;
|
||||||
|
using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.ApplicationPlugins.LoadRegions
|
namespace OpenSim.ApplicationPlugins.LoadRegions
|
||||||
{
|
{
|
||||||
|
@ -130,7 +131,7 @@ namespace OpenSim.ApplicationPlugins.LoadRegions
|
||||||
createdScenes.Add(scene);
|
createdScenes.Add(scene);
|
||||||
|
|
||||||
if (changed)
|
if (changed)
|
||||||
regionsToLoad[i].EstateSettings.Save();
|
m_openSim.EstateDataService.StoreEstateSettings(regionsToLoad[i].EstateSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (IScene scene in createdScenes)
|
foreach (IScene scene in createdScenes)
|
||||||
|
|
|
@ -694,7 +694,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
region.EstateSettings.EstateName = (string) requestData["estate_name"];
|
region.EstateSettings.EstateName = (string) requestData["estate_name"];
|
||||||
region.EstateSettings.EstateOwner = userID;
|
region.EstateSettings.EstateOwner = userID;
|
||||||
// Persistence does not seem to effect the need to save a new estate
|
// Persistence does not seem to effect the need to save a new estate
|
||||||
region.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(region.EstateSettings);
|
||||||
|
|
||||||
if (!m_application.EstateDataService.LinkRegion(region.RegionID, (int) region.EstateSettings.EstateID))
|
if (!m_application.EstateDataService.LinkRegion(region.RegionID, (int) region.EstateSettings.EstateID))
|
||||||
throw new Exception("Failed to join estate.");
|
throw new Exception("Failed to join estate.");
|
||||||
|
@ -724,7 +724,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
// If an access specification was provided, use it.
|
// If an access specification was provided, use it.
|
||||||
// Otherwise accept the default.
|
// Otherwise accept the default.
|
||||||
newScene.RegionInfo.EstateSettings.PublicAccess = GetBoolean(requestData, "public", m_publicAccess);
|
newScene.RegionInfo.EstateSettings.PublicAccess = GetBoolean(requestData, "public", m_publicAccess);
|
||||||
newScene.RegionInfo.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(newScene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
// enable voice on newly created region if
|
// enable voice on newly created region if
|
||||||
// requested by either the XmlRpc request or the
|
// requested by either the XmlRpc request or the
|
||||||
|
@ -910,7 +910,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
scene.RegionInfo.EstateSettings.PublicAccess =
|
scene.RegionInfo.EstateSettings.PublicAccess =
|
||||||
GetBoolean(requestData,"public", scene.RegionInfo.EstateSettings.PublicAccess);
|
GetBoolean(requestData,"public", scene.RegionInfo.EstateSettings.PublicAccess);
|
||||||
if (scene.RegionInfo.Persistent)
|
if (scene.RegionInfo.Persistent)
|
||||||
scene.RegionInfo.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
if (requestData.ContainsKey("enable_voice"))
|
if (requestData.ContainsKey("enable_voice"))
|
||||||
{
|
{
|
||||||
|
@ -1792,7 +1792,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
scene.RegionInfo.EstateSettings.EstateAccess = new UUID[]{};
|
scene.RegionInfo.EstateSettings.EstateAccess = new UUID[]{};
|
||||||
|
|
||||||
if (scene.RegionInfo.Persistent)
|
if (scene.RegionInfo.Persistent)
|
||||||
scene.RegionInfo.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
m_log.Info("[RADMIN]: Access List Clear Request complete");
|
m_log.Info("[RADMIN]: Access List Clear Request complete");
|
||||||
}
|
}
|
||||||
|
@ -1838,7 +1838,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
}
|
}
|
||||||
scene.RegionInfo.EstateSettings.EstateAccess = accessControlList.ToArray();
|
scene.RegionInfo.EstateSettings.EstateAccess = accessControlList.ToArray();
|
||||||
if (scene.RegionInfo.Persistent)
|
if (scene.RegionInfo.Persistent)
|
||||||
scene.RegionInfo.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(scene.RegionInfo.EstateSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
responseData["added"] = addedUsers;
|
responseData["added"] = addedUsers;
|
||||||
|
@ -1887,7 +1887,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController
|
||||||
}
|
}
|
||||||
scene.RegionInfo.EstateSettings.EstateAccess = accessControlList.ToArray();
|
scene.RegionInfo.EstateSettings.EstateAccess = accessControlList.ToArray();
|
||||||
if (scene.RegionInfo.Persistent)
|
if (scene.RegionInfo.Persistent)
|
||||||
scene.RegionInfo.EstateSettings.Save();
|
m_application.EstateDataService.StoreEstateSettings(scene.RegionInfo.EstateSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
responseData["removed"] = removedUsers;
|
responseData["removed"] = removedUsers;
|
||||||
|
|
|
@ -25,6 +25,10 @@
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Framework
|
namespace OpenSim.Framework
|
||||||
|
@ -111,5 +115,50 @@ namespace OpenSim.Framework
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public EstateBan() { }
|
||||||
|
|
||||||
|
public Dictionary<string, object> ToMap()
|
||||||
|
{
|
||||||
|
Dictionary<string, object> map = new Dictionary<string, object>();
|
||||||
|
PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
foreach (PropertyInfo p in properties)
|
||||||
|
map[p.Name] = p.GetValue(this, null);
|
||||||
|
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
public EstateBan(Dictionary<string, object> map)
|
||||||
|
{
|
||||||
|
foreach (KeyValuePair<string, object> kvp in map)
|
||||||
|
{
|
||||||
|
PropertyInfo p = this.GetType().GetProperty(kvp.Key, BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
if (p == null)
|
||||||
|
continue;
|
||||||
|
object value = p.GetValue(this, null);
|
||||||
|
if (value is String)
|
||||||
|
p.SetValue(this, map[p.Name], null);
|
||||||
|
else if (value is UInt32)
|
||||||
|
p.SetValue(this, UInt32.Parse((string)map[p.Name]), null);
|
||||||
|
else if (value is Boolean)
|
||||||
|
p.SetValue(this, Boolean.Parse((string)map[p.Name]), null);
|
||||||
|
else if (value is UUID)
|
||||||
|
p.SetValue(this, UUID.Parse((string)map[p.Name]), null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// For debugging
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
Dictionary<string, object> map = ToMap();
|
||||||
|
string result = string.Empty;
|
||||||
|
foreach (KeyValuePair<string, object> kvp in map)
|
||||||
|
result += string.Format("{0}: {1} {2}", kvp.Key, kvp.Value, Environment.NewLine);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -418,17 +418,106 @@ namespace OpenSim.Framework
|
||||||
Dictionary<string, object> map = new Dictionary<string, object>();
|
Dictionary<string, object> map = new Dictionary<string, object>();
|
||||||
PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
||||||
foreach (PropertyInfo p in properties)
|
foreach (PropertyInfo p in properties)
|
||||||
map[p.Name] = p.GetValue(this, null);
|
{
|
||||||
|
// EstateBans is a complex type, let's treat it as special
|
||||||
|
if (p.Name == "EstateBans")
|
||||||
|
continue;
|
||||||
|
|
||||||
|
object value = p.GetValue(this, null);
|
||||||
|
if (value != null)
|
||||||
|
{
|
||||||
|
if (p.PropertyType.IsArray) // of UUIDs
|
||||||
|
{
|
||||||
|
if (((Array)value).Length > 0)
|
||||||
|
{
|
||||||
|
string[] args = new string[((Array)value).Length];
|
||||||
|
int index = 0;
|
||||||
|
foreach (object o in (Array)value)
|
||||||
|
args[index++] = o.ToString();
|
||||||
|
map[p.Name] = String.Join(",", args);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else // simple types
|
||||||
|
map[p.Name] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// EstateBans are special
|
||||||
|
Dictionary<string, object> bans = new Dictionary<string, object>();
|
||||||
|
int i = 0;
|
||||||
|
foreach (EstateBan ban in EstateBans)
|
||||||
|
bans["ban" + i++] = ban.ToMap();
|
||||||
|
map["EstateBans"] = bans;
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// For debugging
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
Dictionary<string, object> map = ToMap();
|
||||||
|
String result = String.Empty;
|
||||||
|
|
||||||
|
foreach (KeyValuePair<string, object> kvp in map)
|
||||||
|
{
|
||||||
|
if (kvp.Key == "EstateBans")
|
||||||
|
{
|
||||||
|
result += "EstateBans:" + Environment.NewLine;
|
||||||
|
foreach (KeyValuePair<string, object> ban in (Dictionary<string, object>)kvp.Value)
|
||||||
|
result += ban.Value.ToString();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
result += string.Format("{0}: {1} {2}", kvp.Key, kvp.Value.ToString(), Environment.NewLine);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
public EstateSettings(Dictionary<string, object> map)
|
public EstateSettings(Dictionary<string, object> map)
|
||||||
{
|
{
|
||||||
PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
foreach (KeyValuePair<string, object> kvp in map)
|
||||||
foreach (PropertyInfo p in properties)
|
{
|
||||||
p.SetValue(this, map[p.Name], null);
|
PropertyInfo p = this.GetType().GetProperty(kvp.Key, BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
if (p == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
// EstateBans is a complex type, let's treat it as special
|
||||||
|
if (p.Name == "EstateBans")
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (p.PropertyType.IsArray)
|
||||||
|
{
|
||||||
|
string[] elements = ((string)map[p.Name]).Split(new char[] { ',' });
|
||||||
|
UUID[] uuids = new UUID[elements.Length];
|
||||||
|
int i = 0;
|
||||||
|
foreach (string e in elements)
|
||||||
|
uuids[i++] = new UUID(e);
|
||||||
|
p.SetValue(this, uuids, null);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
object value = p.GetValue(this, null);
|
||||||
|
if (value is String)
|
||||||
|
p.SetValue(this, map[p.Name], null);
|
||||||
|
else if (value is UInt32)
|
||||||
|
p.SetValue(this, UInt32.Parse((string)map[p.Name]), null);
|
||||||
|
else if (value is Boolean)
|
||||||
|
p.SetValue(this, Boolean.Parse((string)map[p.Name]), null);
|
||||||
|
else if (value is UUID)
|
||||||
|
p.SetValue(this, UUID.Parse((string)map[p.Name]), null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// EstateBans are special
|
||||||
|
var banData = ((Dictionary<string, object>)map["EstateBans"]).Values;
|
||||||
|
EstateBan[] bans = new EstateBan[banData.Count];
|
||||||
|
int b = 0;
|
||||||
|
foreach (Dictionary<string, object> ban in banData)
|
||||||
|
bans[b++] = new EstateBan(ban);
|
||||||
|
PropertyInfo bansProperty = this.GetType().GetProperty("EstateBans", BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
bansProperty.SetValue(this, bans, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -730,7 +730,7 @@ namespace OpenSim
|
||||||
CreateRegion(regInfo, true, out scene);
|
CreateRegion(regInfo, true, out scene);
|
||||||
|
|
||||||
if (changed)
|
if (changed)
|
||||||
regInfo.EstateSettings.Save();
|
m_estateDataService.StoreEstateSettings(regInfo.EstateSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -232,13 +232,9 @@ namespace OpenSim
|
||||||
module));
|
module));
|
||||||
|
|
||||||
// Load the estate data service
|
// Load the estate data service
|
||||||
IConfig estateDataConfig = Config.Configs["EstateDataStore"];
|
module = Util.GetConfigVarFromSections<string>(Config, "LocalServiceModule", new string[]{"EstateDataStore", "EstateService"}, String.Empty);
|
||||||
if (estateDataConfig == null)
|
|
||||||
throw new Exception("Configuration file is missing the [EstateDataStore] section. Have you copied OpenSim.ini.example to OpenSim.ini to reference config-include/ files?");
|
|
||||||
|
|
||||||
module = estateDataConfig.GetString("LocalServiceModule", String.Empty);
|
|
||||||
if (String.IsNullOrEmpty(module))
|
if (String.IsNullOrEmpty(module))
|
||||||
throw new Exception("Configuration file is missing the LocalServiceModule parameter in the [EstateDataStore] section");
|
throw new Exception("Configuration file is missing the LocalServiceModule parameter in the [EstateDataStore] or [EstateService] section");
|
||||||
|
|
||||||
m_estateDataService = ServerUtils.LoadPlugin<IEstateDataService>(module, new object[] { Config });
|
m_estateDataService = ServerUtils.LoadPlugin<IEstateDataService>(module, new object[] { Config });
|
||||||
if (m_estateDataService == null)
|
if (m_estateDataService == null)
|
||||||
|
@ -555,7 +551,7 @@ namespace OpenSim
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
regionInfo.EstateSettings.EstateOwner = account.PrincipalID;
|
regionInfo.EstateSettings.EstateOwner = account.PrincipalID;
|
||||||
regionInfo.EstateSettings.Save();
|
m_estateDataService.StoreEstateSettings(regionInfo.EstateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -950,7 +946,7 @@ namespace OpenSim
|
||||||
// back to the default. The reloading of estate settings by scene could be eliminated if it
|
// back to the default. The reloading of estate settings by scene could be eliminated if it
|
||||||
// knows that the passed in settings in RegionInfo are already valid. Also, it might be
|
// knows that the passed in settings in RegionInfo are already valid. Also, it might be
|
||||||
// possible to eliminate some additional later saves made by callers of this method.
|
// possible to eliminate some additional later saves made by callers of this method.
|
||||||
regInfo.EstateSettings.Save();
|
EstateDataService.StoreEstateSettings(regInfo.EstateSettings);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -244,7 +244,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dbSettings.EstateOwner = account.PrincipalID;
|
dbSettings.EstateOwner = account.PrincipalID;
|
||||||
dbSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(dbSettings);
|
||||||
response = String.Empty;
|
response = String.Empty;
|
||||||
|
|
||||||
// make sure there's a log entry to document the change
|
// make sure there's a log entry to document the change
|
||||||
|
@ -292,7 +292,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
string oldName = dbSettings.EstateName;
|
string oldName = dbSettings.EstateName;
|
||||||
dbSettings.EstateName = newName;
|
dbSettings.EstateName = newName;
|
||||||
dbSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(dbSettings);
|
||||||
response = String.Empty;
|
response = String.Empty;
|
||||||
|
|
||||||
// make sure there's a log entry to document the change
|
// make sure there's a log entry to document the change
|
||||||
|
@ -367,10 +367,15 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
EstateSettings settings = Scene.EstateDataService.CreateNewEstate();
|
EstateSettings settings = Scene.EstateDataService.CreateNewEstate();
|
||||||
settings.EstateOwner = ownerID;
|
if (settings == null)
|
||||||
settings.EstateName = estateName;
|
response = String.Format("Unable to create estate \"{0}\" at this simulator", estateName);
|
||||||
settings.Save();
|
else
|
||||||
response = String.Empty;
|
{
|
||||||
|
settings.EstateOwner = ownerID;
|
||||||
|
settings.EstateName = estateName;
|
||||||
|
Scene.EstateDataService.StoreEstateSettings(settings);
|
||||||
|
response = String.Empty;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return response;
|
return response;
|
||||||
|
@ -636,13 +641,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.AddEstateUser(user);
|
estateSettings.AddEstateUser(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.AddEstateUser(user);
|
Scene.RegionInfo.EstateSettings.AddEstateUser(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AccessOptions, Scene.RegionInfo.EstateSettings.EstateAccess, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AccessOptions, Scene.RegionInfo.EstateSettings.EstateAccess, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -669,13 +674,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.RemoveEstateUser(user);
|
estateSettings.RemoveEstateUser(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.RemoveEstateUser(user);
|
Scene.RegionInfo.EstateSettings.RemoveEstateUser(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AccessOptions, Scene.RegionInfo.EstateSettings.EstateAccess, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AccessOptions, Scene.RegionInfo.EstateSettings.EstateAccess, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -701,13 +706,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.AddEstateGroup(user);
|
estateSettings.AddEstateGroup(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.AddEstateGroup(user);
|
Scene.RegionInfo.EstateSettings.AddEstateGroup(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AllowedGroups, Scene.RegionInfo.EstateSettings.EstateGroups, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AllowedGroups, Scene.RegionInfo.EstateSettings.EstateGroups, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -733,13 +738,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.RemoveEstateGroup(user);
|
estateSettings.RemoveEstateGroup(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.RemoveEstateGroup(user);
|
Scene.RegionInfo.EstateSettings.RemoveEstateGroup(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AllowedGroups, Scene.RegionInfo.EstateSettings.EstateGroups, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.AllowedGroups, Scene.RegionInfo.EstateSettings.EstateGroups, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -788,7 +793,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
|
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.AddBan(bitem);
|
estateSettings.AddBan(bitem);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -801,7 +806,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
item.BannedHostIPMask = "0.0.0.0";
|
item.BannedHostIPMask = "0.0.0.0";
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.AddBan(item);
|
Scene.RegionInfo.EstateSettings.AddBan(item);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
|
|
||||||
|
@ -864,13 +869,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.RemoveBan(user);
|
estateSettings.RemoveBan(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.RemoveBan(listitem.BannedUserID);
|
Scene.RegionInfo.EstateSettings.RemoveBan(listitem.BannedUserID);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
}
|
}
|
||||||
|
@ -903,13 +908,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.AddEstateManager(user);
|
estateSettings.AddEstateManager(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.AddEstateManager(user);
|
Scene.RegionInfo.EstateSettings.AddEstateManager(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.EstateManagers, Scene.RegionInfo.EstateSettings.EstateManagers, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.EstateManagers, Scene.RegionInfo.EstateSettings.EstateManagers, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -935,13 +940,13 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
{
|
{
|
||||||
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
estateSettings = Scene.EstateDataService.LoadEstateSettings(estateID);
|
||||||
estateSettings.RemoveEstateManager(user);
|
estateSettings.RemoveEstateManager(user);
|
||||||
estateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(estateSettings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.RemoveEstateManager(user);
|
Scene.RegionInfo.EstateSettings.RemoveEstateManager(user);
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.EstateManagers, Scene.RegionInfo.EstateSettings.EstateManagers, Scene.RegionInfo.EstateSettings.EstateID);
|
remote_client.SendEstateList(invoice, (int)Constants.EstateAccessCodex.EstateManagers, Scene.RegionInfo.EstateSettings.EstateManagers, Scene.RegionInfo.EstateSettings.EstateID);
|
||||||
|
@ -1415,7 +1420,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||||
else
|
else
|
||||||
Scene.RegionInfo.EstateSettings.DenyMinors = false;
|
Scene.RegionInfo.EstateSettings.DenyMinors = false;
|
||||||
|
|
||||||
Scene.RegionInfo.EstateSettings.Save();
|
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||||
TriggerEstateInfoChange();
|
TriggerEstateInfoChange();
|
||||||
|
|
||||||
Scene.TriggerEstateSunUpdate();
|
Scene.TriggerEstateSunUpdate();
|
||||||
|
|
|
@ -1246,7 +1246,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
World.RegionInfo.EstateSettings.UseGlobalTime = !sunFixed;
|
World.RegionInfo.EstateSettings.UseGlobalTime = !sunFixed;
|
||||||
World.RegionInfo.EstateSettings.SunPosition = sunHour;
|
World.RegionInfo.EstateSettings.SunPosition = sunHour;
|
||||||
World.RegionInfo.EstateSettings.FixedSun = sunFixed;
|
World.RegionInfo.EstateSettings.FixedSun = sunFixed;
|
||||||
World.RegionInfo.EstateSettings.Save();
|
World.EstateDataService.StoreEstateSettings(World.RegionInfo.EstateSettings);
|
||||||
|
|
||||||
World.EventManager.TriggerEstateToolsSunUpdate(World.RegionInfo.RegionHandle);
|
World.EventManager.TriggerEstateToolsSunUpdate(World.RegionInfo.RegionHandle);
|
||||||
}
|
}
|
||||||
|
|
|
@ -425,7 +425,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
|
||||||
estate.EstateID, admin.Name);
|
estate.EstateID, admin.Name);
|
||||||
|
|
||||||
estate.EstateOwner = admin.PrincipalID;
|
estate.EstateOwner = admin.PrincipalID;
|
||||||
estate.Save();
|
scene.EstateDataService.StoreEstateSettings(estate);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -1835,6 +1835,7 @@
|
||||||
<Reference name="OpenSim.Framework.RegionLoader.Filesystem"/>
|
<Reference name="OpenSim.Framework.RegionLoader.Filesystem"/>
|
||||||
<Reference name="OpenSim.Framework.RegionLoader.Web"/>
|
<Reference name="OpenSim.Framework.RegionLoader.Web"/>
|
||||||
<Reference name="OpenSim.Framework.Servers"/>
|
<Reference name="OpenSim.Framework.Servers"/>
|
||||||
|
<Reference name="OpenSim.Services.Interfaces"/>
|
||||||
<Reference name="log4net" path="../../../bin/"/>
|
<Reference name="log4net" path="../../../bin/"/>
|
||||||
|
|
||||||
<Files>
|
<Files>
|
||||||
|
|
Loading…
Reference in New Issue