Fix a bug where estate not found would result in a dummy estate record with erroneous information.
Also, added conversion of EstateSettings from/to key-value pairs in preparation for robust net work connectors.0.8.0.3
parent
75d21aa71a
commit
4da471a5aa
|
@ -145,7 +145,11 @@ namespace OpenSim.Data.MySQL
|
||||||
cmd.CommandText = sql;
|
cmd.CommandText = sql;
|
||||||
cmd.Parameters.AddWithValue("?RegionID", regionID.ToString());
|
cmd.Parameters.AddWithValue("?RegionID", regionID.ToString());
|
||||||
|
|
||||||
return DoLoad(cmd, regionID, create);
|
EstateSettings e = DoLoad(cmd, regionID, create);
|
||||||
|
if (!create && e.EstateID == 0) // Not found
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return e;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -427,7 +431,10 @@ namespace OpenSim.Data.MySQL
|
||||||
cmd.CommandText = sql;
|
cmd.CommandText = sql;
|
||||||
cmd.Parameters.AddWithValue("?EstateID", estateID);
|
cmd.Parameters.AddWithValue("?EstateID", estateID);
|
||||||
|
|
||||||
return DoLoad(cmd, UUID.Zero, false);
|
EstateSettings e = DoLoad(cmd, UUID.Zero, false);
|
||||||
|
if (e.EstateID != estateID)
|
||||||
|
return null;
|
||||||
|
return e;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Reflection;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Framework
|
namespace OpenSim.Framework
|
||||||
|
@ -411,5 +412,23 @@ namespace OpenSim.Framework
|
||||||
{
|
{
|
||||||
return l_EstateGroups.Contains(groupID);
|
return l_EstateGroups.Contains(groupID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
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 EstateSettings(Dictionary<string, object> map)
|
||||||
|
{
|
||||||
|
PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
|
||||||
|
foreach (PropertyInfo p in properties)
|
||||||
|
p.SetValue(this, map[p.Name], null);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue