Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim
commit
a3db2936f7
|
@ -36,15 +36,9 @@ namespace OpenSim.Data
|
||||||
{
|
{
|
||||||
public abstract class AssetDataBase : IAssetDataPlugin
|
public abstract class AssetDataBase : IAssetDataPlugin
|
||||||
{
|
{
|
||||||
public virtual AssetBase FetchAsset(UUID uuid)
|
public abstract AssetBase GetAsset(UUID uuid);
|
||||||
{
|
|
||||||
return FetchStoredAsset(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected abstract AssetBase FetchStoredAsset(UUID uuid);
|
|
||||||
|
|
||||||
public abstract void CreateAsset(AssetBase asset);
|
public abstract void StoreAsset(AssetBase asset);
|
||||||
public abstract void UpdateAsset(AssetBase asset);
|
|
||||||
public abstract bool ExistsAsset(UUID uuid);
|
public abstract bool ExistsAsset(UUID uuid);
|
||||||
|
|
||||||
public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count);
|
public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count);
|
||||||
|
|
|
@ -38,9 +38,8 @@ namespace OpenSim.Data
|
||||||
public abstract RegionProfileData[] GetProfilesInRange(uint Xmin, uint Ymin, uint Xmax, uint Ymax);
|
public abstract RegionProfileData[] GetProfilesInRange(uint Xmin, uint Ymin, uint Xmax, uint Ymax);
|
||||||
public abstract List<RegionProfileData> GetRegionsByName(string namePrefix, uint maxNum);
|
public abstract List<RegionProfileData> GetRegionsByName(string namePrefix, uint maxNum);
|
||||||
public abstract bool AuthenticateSim(UUID UUID, ulong regionHandle, string simrecvkey);
|
public abstract bool AuthenticateSim(UUID UUID, ulong regionHandle, string simrecvkey);
|
||||||
public abstract DataResponse AddProfile(RegionProfileData profile);
|
public abstract DataResponse StoreProfile(RegionProfileData profile);
|
||||||
public abstract ReservationData GetReservationAtPoint(uint x, uint y);
|
public abstract ReservationData GetReservationAtPoint(uint x, uint y);
|
||||||
public abstract DataResponse UpdateProfile(RegionProfileData profile);
|
|
||||||
public abstract DataResponse DeleteProfile(string uuid);
|
public abstract DataResponse DeleteProfile(string uuid);
|
||||||
|
|
||||||
public abstract void Initialise();
|
public abstract void Initialise();
|
||||||
|
|
|
@ -33,9 +33,8 @@ namespace OpenSim.Data
|
||||||
{
|
{
|
||||||
public interface IAssetDataPlugin : IPlugin
|
public interface IAssetDataPlugin : IPlugin
|
||||||
{
|
{
|
||||||
AssetBase FetchAsset(UUID uuid);
|
AssetBase GetAsset(UUID uuid);
|
||||||
void CreateAsset(AssetBase asset);
|
void StoreAsset(AssetBase asset);
|
||||||
void UpdateAsset(AssetBase asset);
|
|
||||||
bool ExistsAsset(UUID uuid);
|
bool ExistsAsset(UUID uuid);
|
||||||
List<AssetMetadata> FetchAssetMetadataSet(int start, int count);
|
List<AssetMetadata> FetchAssetMetadataSet(int start, int count);
|
||||||
void Initialise(string connect);
|
void Initialise(string connect);
|
||||||
|
|
|
@ -99,18 +99,11 @@ namespace OpenSim.Data
|
||||||
bool AuthenticateSim(UUID UUID, ulong regionHandle, string simrecvkey);
|
bool AuthenticateSim(UUID UUID, ulong regionHandle, string simrecvkey);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds a new profile to the database
|
/// Adds or updates a profile in the database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="profile">The profile to add</param>
|
/// <param name="profile">The profile to add</param>
|
||||||
/// <returns>RESPONSE_OK if successful, error if not.</returns>
|
/// <returns>RESPONSE_OK if successful, error if not.</returns>
|
||||||
DataResponse AddProfile(RegionProfileData profile);
|
DataResponse StoreProfile(RegionProfileData profile);
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Updates a profile in the database
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="profile"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
DataResponse UpdateProfile(RegionProfileData profile);
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Remove a profile from the database
|
/// Remove a profile from the database
|
||||||
|
|
|
@ -122,7 +122,7 @@ namespace OpenSim.Data.MSSQL
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="assetID">the asset UUID</param>
|
/// <param name="assetID">the asset UUID</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
override protected AssetBase FetchStoredAsset(UUID assetID)
|
override public AssetBase GetAsset(UUID assetID)
|
||||||
{
|
{
|
||||||
string sql = "SELECT * FROM assets WHERE id = @id";
|
string sql = "SELECT * FROM assets WHERE id = @id";
|
||||||
using (AutoClosingSqlCommand command = m_database.Query(sql))
|
using (AutoClosingSqlCommand command = m_database.Query(sql))
|
||||||
|
@ -152,7 +152,16 @@ namespace OpenSim.Data.MSSQL
|
||||||
/// Create asset in m_database
|
/// Create asset in m_database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="asset">the asset</param>
|
/// <param name="asset">the asset</param>
|
||||||
override public void CreateAsset(AssetBase asset)
|
override public void StoreAsset(AssetBase asset)
|
||||||
|
{
|
||||||
|
if (ExistsAsset(asset.FullID))
|
||||||
|
UpdateAsset(asset);
|
||||||
|
else
|
||||||
|
InsertAsset(asset);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void InsertAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
if (ExistsAsset(asset.FullID))
|
if (ExistsAsset(asset.FullID))
|
||||||
{
|
{
|
||||||
|
@ -208,7 +217,7 @@ namespace OpenSim.Data.MSSQL
|
||||||
/// Update asset in m_database
|
/// Update asset in m_database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="asset">the asset</param>
|
/// <param name="asset">the asset</param>
|
||||||
override public void UpdateAsset(AssetBase asset)
|
private void UpdateAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
string sql = @"UPDATE assets set id = @id, name = @name, description = @description, assetType = @assetType,
|
string sql = @"UPDATE assets set id = @id, name = @name, description = @description, assetType = @assetType,
|
||||||
local = @local, temporary = @temporary, data = @data
|
local = @local, temporary = @temporary, data = @data
|
||||||
|
@ -250,7 +259,7 @@ namespace OpenSim.Data.MSSQL
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Commented out since currently unused - this probably should be called in FetchAsset()
|
// Commented out since currently unused - this probably should be called in GetAsset()
|
||||||
// private void UpdateAccessTime(AssetBase asset)
|
// private void UpdateAccessTime(AssetBase asset)
|
||||||
// {
|
// {
|
||||||
// using (AutoClosingSqlCommand cmd = m_database.Query("UPDATE assets SET access_time = @access_time WHERE id=@id"))
|
// using (AutoClosingSqlCommand cmd = m_database.Query("UPDATE assets SET access_time = @access_time WHERE id=@id"))
|
||||||
|
@ -276,7 +285,7 @@ namespace OpenSim.Data.MSSQL
|
||||||
/// <returns>true if exist.</returns>
|
/// <returns>true if exist.</returns>
|
||||||
override public bool ExistsAsset(UUID uuid)
|
override public bool ExistsAsset(UUID uuid)
|
||||||
{
|
{
|
||||||
if (FetchAsset(uuid) != null)
|
if (GetAsset(uuid) != null)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -272,26 +272,23 @@ namespace OpenSim.Data.MSSQL
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="profile">The profile to add</param>
|
/// <param name="profile">The profile to add</param>
|
||||||
/// <returns>A dataresponse enum indicating success</returns>
|
/// <returns>A dataresponse enum indicating success</returns>
|
||||||
override public DataResponse AddProfile(RegionProfileData profile)
|
override public DataResponse StoreProfile(RegionProfileData profile)
|
||||||
{
|
{
|
||||||
if (InsertRegionRow(profile))
|
if (GetProfileByUUID(profile.UUID) == null)
|
||||||
{
|
{
|
||||||
return DataResponse.RESPONSE_OK;
|
if (InsertRegionRow(profile))
|
||||||
|
{
|
||||||
|
return DataResponse.RESPONSE_OK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (UpdateRegionRow(profile))
|
||||||
|
{
|
||||||
|
return DataResponse.RESPONSE_OK;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return DataResponse.RESPONSE_ERROR;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Update the specified region in the database
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="profile">The profile to update</param>
|
|
||||||
/// <returns>A dataresponse enum indicating success</returns>
|
|
||||||
override public DataResponse UpdateProfile(RegionProfileData profile)
|
|
||||||
{
|
|
||||||
if (UpdateRegionRow(profile))
|
|
||||||
{
|
|
||||||
return DataResponse.RESPONSE_OK;
|
|
||||||
}
|
|
||||||
return DataResponse.RESPONSE_ERROR;
|
return DataResponse.RESPONSE_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -135,7 +135,7 @@ namespace OpenSim.Data.MySQL
|
||||||
/// <param name="assetID">Asset UUID to fetch</param>
|
/// <param name="assetID">Asset UUID to fetch</param>
|
||||||
/// <returns>Return the asset</returns>
|
/// <returns>Return the asset</returns>
|
||||||
/// <remarks>On failure : throw an exception and attempt to reconnect to database</remarks>
|
/// <remarks>On failure : throw an exception and attempt to reconnect to database</remarks>
|
||||||
override protected AssetBase FetchStoredAsset(UUID assetID)
|
override public AssetBase GetAsset(UUID assetID)
|
||||||
{
|
{
|
||||||
AssetBase asset = null;
|
AssetBase asset = null;
|
||||||
lock (_dbConnection)
|
lock (_dbConnection)
|
||||||
|
@ -192,7 +192,7 @@ namespace OpenSim.Data.MySQL
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="asset">Asset UUID to create</param>
|
/// <param name="asset">Asset UUID to create</param>
|
||||||
/// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks>
|
/// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks>
|
||||||
override public void CreateAsset(AssetBase asset)
|
override public void StoreAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
lock (_dbConnection)
|
lock (_dbConnection)
|
||||||
{
|
{
|
||||||
|
@ -284,15 +284,6 @@ namespace OpenSim.Data.MySQL
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Update a asset in database, see <see cref="CreateAsset"/>
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="asset">Asset UUID to update</param>
|
|
||||||
override public void UpdateAsset(AssetBase asset)
|
|
||||||
{
|
|
||||||
CreateAsset(asset);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// check if the asset UUID exist in database
|
/// check if the asset UUID exist in database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -391,7 +391,7 @@ namespace OpenSim.Data.MySQL
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="profile">The profile to add</param>
|
/// <param name="profile">The profile to add</param>
|
||||||
/// <returns>Successful?</returns>
|
/// <returns>Successful?</returns>
|
||||||
override public DataResponse AddProfile(RegionProfileData profile)
|
override public DataResponse StoreProfile(RegionProfileData profile)
|
||||||
{
|
{
|
||||||
MySQLSuperManager dbm = GetLockedConnection();
|
MySQLSuperManager dbm = GetLockedConnection();
|
||||||
try {
|
try {
|
||||||
|
@ -407,17 +407,6 @@ namespace OpenSim.Data.MySQL
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Update a sim profile
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="profile">The profile to update</param>
|
|
||||||
/// <returns>Sucessful?</returns>
|
|
||||||
/// <remarks>Same as AddProfile</remarks>
|
|
||||||
override public DataResponse UpdateProfile(RegionProfileData profile)
|
|
||||||
{
|
|
||||||
return AddProfile(profile);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Deletes a sim profile from the database
|
/// Deletes a sim profile from the database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -65,30 +65,24 @@ namespace OpenSim.Data.NHibernate
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override protected AssetBase FetchStoredAsset(UUID uuid)
|
override public AssetBase GetAsset(UUID uuid)
|
||||||
{
|
{
|
||||||
return (AssetBase)manager.Get(typeof(AssetBase), uuid);
|
return (AssetBase)manager.Get(typeof(AssetBase), uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Save(AssetBase asset)
|
override public void StoreAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
AssetBase temp = (AssetBase)manager.Get(typeof(AssetBase), asset.FullID);
|
AssetBase temp = (AssetBase)manager.Get(typeof(AssetBase), asset.FullID);
|
||||||
if (temp == null)
|
if (temp == null)
|
||||||
{
|
{
|
||||||
|
m_log.InfoFormat("[NHIBERNATE] inserting asset {0}", asset.FullID);
|
||||||
manager.Insert(asset);
|
manager.Insert(asset);
|
||||||
}
|
}
|
||||||
}
|
else
|
||||||
|
{
|
||||||
override public void CreateAsset(AssetBase asset)
|
m_log.InfoFormat("[NHIBERNATE] updating asset {0}", asset.FullID);
|
||||||
{
|
manager.Update(asset);
|
||||||
m_log.InfoFormat("[NHIBERNATE] inserting asset {0}", asset.FullID);
|
}
|
||||||
Save(asset);
|
|
||||||
}
|
|
||||||
|
|
||||||
override public void UpdateAsset(AssetBase asset)
|
|
||||||
{
|
|
||||||
m_log.InfoFormat("[NHIBERNATE] updating asset {0}", asset.FullID);
|
|
||||||
manager.Update(asset);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// private void LogAssetLoad(AssetBase asset)
|
// private void LogAssetLoad(AssetBase asset)
|
||||||
|
@ -107,7 +101,7 @@ namespace OpenSim.Data.NHibernate
|
||||||
override public bool ExistsAsset(UUID uuid)
|
override public bool ExistsAsset(UUID uuid)
|
||||||
{
|
{
|
||||||
m_log.InfoFormat("[NHIBERNATE] ExistsAsset: {0}", uuid);
|
m_log.InfoFormat("[NHIBERNATE] ExistsAsset: {0}", uuid);
|
||||||
return (FetchAsset(uuid) != null);
|
return (GetAsset(uuid) != null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -117,7 +117,7 @@ namespace OpenSim.Data.NHibernate
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override DataResponse AddProfile(RegionProfileData profile)
|
public override DataResponse StoreProfile(RegionProfileData profile)
|
||||||
{
|
{
|
||||||
if (manager.Get(typeof(RegionProfileData), profile.Uuid) == null)
|
if (manager.Get(typeof(RegionProfileData), profile.Uuid) == null)
|
||||||
{
|
{
|
||||||
|
@ -125,22 +125,10 @@ namespace OpenSim.Data.NHibernate
|
||||||
return DataResponse.RESPONSE_OK;
|
return DataResponse.RESPONSE_OK;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
return DataResponse.RESPONSE_ERROR;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override DataResponse UpdateProfile(RegionProfileData profile)
|
|
||||||
{
|
|
||||||
if (manager.Get(typeof(RegionProfileData), profile.Uuid) != null)
|
|
||||||
{
|
{
|
||||||
manager.Update(profile);
|
manager.Update(profile);
|
||||||
return DataResponse.RESPONSE_OK;
|
return DataResponse.RESPONSE_OK;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
return DataResponse.RESPONSE_ERROR;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override DataResponse DeleteProfile(string uuid)
|
public override DataResponse DeleteProfile(string uuid)
|
||||||
|
|
|
@ -90,7 +90,7 @@ namespace OpenSim.Data.SQLite
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="uuid">UUID of ... ?</param>
|
/// <param name="uuid">UUID of ... ?</param>
|
||||||
/// <returns>Asset base</returns>
|
/// <returns>Asset base</returns>
|
||||||
override protected AssetBase FetchStoredAsset(UUID uuid)
|
override public AssetBase GetAsset(UUID uuid)
|
||||||
{
|
{
|
||||||
lock (this)
|
lock (this)
|
||||||
{
|
{
|
||||||
|
@ -119,12 +119,28 @@ namespace OpenSim.Data.SQLite
|
||||||
/// Create an asset
|
/// Create an asset
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="asset">Asset Base</param>
|
/// <param name="asset">Asset Base</param>
|
||||||
override public void CreateAsset(AssetBase asset)
|
override public void StoreAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
//m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString());
|
//m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString());
|
||||||
if (ExistsAsset(asset.FullID))
|
if (ExistsAsset(asset.FullID))
|
||||||
{
|
{
|
||||||
//m_log.Info("[ASSET DB]: Asset exists already, ignoring.");
|
LogAssetLoad(asset);
|
||||||
|
|
||||||
|
lock (this)
|
||||||
|
{
|
||||||
|
using (SqliteCommand cmd = new SqliteCommand(UpdateAssetSQL, m_conn))
|
||||||
|
{
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":UUID", asset.FullID.ToString()));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Name", asset.Name));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Description", asset.Description));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Type", asset.Type));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Local", asset.Local));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Temporary", asset.Temporary));
|
||||||
|
cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data));
|
||||||
|
|
||||||
|
cmd.ExecuteNonQuery();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -146,31 +162,6 @@ namespace OpenSim.Data.SQLite
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Update an asset
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="asset"></param>
|
|
||||||
override public void UpdateAsset(AssetBase asset)
|
|
||||||
{
|
|
||||||
LogAssetLoad(asset);
|
|
||||||
|
|
||||||
lock (this)
|
|
||||||
{
|
|
||||||
using (SqliteCommand cmd = new SqliteCommand(UpdateAssetSQL, m_conn))
|
|
||||||
{
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":UUID", asset.FullID.ToString()));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Name", asset.Name));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Description", asset.Description));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Type", asset.Type));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Local", asset.Local));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Temporary", asset.Temporary));
|
|
||||||
cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data));
|
|
||||||
|
|
||||||
cmd.ExecuteNonQuery();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Some... logging functionnality
|
/// Some... logging functionnality
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -203,7 +203,7 @@ namespace OpenSim.Data.SQLite
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="profile">The profile to add</param>
|
/// <param name="profile">The profile to add</param>
|
||||||
/// <returns>A dataresponse enum indicating success</returns>
|
/// <returns>A dataresponse enum indicating success</returns>
|
||||||
override public DataResponse AddProfile(RegionProfileData profile)
|
override public DataResponse StoreProfile(RegionProfileData profile)
|
||||||
{
|
{
|
||||||
if (database.insertRow(profile))
|
if (database.insertRow(profile))
|
||||||
{
|
{
|
||||||
|
@ -215,17 +215,11 @@ namespace OpenSim.Data.SQLite
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override public DataResponse UpdateProfile(RegionProfileData profile)
|
/// <summary>
|
||||||
{
|
|
||||||
return AddProfile(profile);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Deletes a sim profile from the database
|
/// Deletes a sim profile from the database
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="uuid">the sim UUID</param>
|
/// <param name="uuid">the sim UUID</param>
|
||||||
/// <returns>Successful?</returns>
|
/// <returns>Successful?</returns>
|
||||||
//public DataResponse DeleteProfile(RegionProfileData profile)
|
|
||||||
override public DataResponse DeleteProfile(string uuid)
|
override public DataResponse DeleteProfile(string uuid)
|
||||||
{
|
{
|
||||||
Dictionary<string, string> param = new Dictionary<string, string>();
|
Dictionary<string, string> param = new Dictionary<string, string>();
|
||||||
|
|
|
@ -84,34 +84,34 @@ namespace OpenSim.Data.Tests
|
||||||
scrambler.Scramble(a2);
|
scrambler.Scramble(a2);
|
||||||
scrambler.Scramble(a3);
|
scrambler.Scramble(a3);
|
||||||
|
|
||||||
db.CreateAsset(a1);
|
db.StoreAsset(a1);
|
||||||
db.CreateAsset(a2);
|
db.StoreAsset(a2);
|
||||||
db.CreateAsset(a3);
|
db.StoreAsset(a3);
|
||||||
|
|
||||||
AssetBase a1a = db.FetchAsset(uuid1);
|
AssetBase a1a = db.GetAsset(uuid1);
|
||||||
Assert.That(a1a, Constraints.PropertyCompareConstraint(a1));
|
Assert.That(a1a, Constraints.PropertyCompareConstraint(a1));
|
||||||
|
|
||||||
AssetBase a2a = db.FetchAsset(uuid2);
|
AssetBase a2a = db.GetAsset(uuid2);
|
||||||
Assert.That(a2a, Constraints.PropertyCompareConstraint(a2));
|
Assert.That(a2a, Constraints.PropertyCompareConstraint(a2));
|
||||||
|
|
||||||
AssetBase a3a = db.FetchAsset(uuid3);
|
AssetBase a3a = db.GetAsset(uuid3);
|
||||||
Assert.That(a3a, Constraints.PropertyCompareConstraint(a3));
|
Assert.That(a3a, Constraints.PropertyCompareConstraint(a3));
|
||||||
|
|
||||||
scrambler.Scramble(a1a);
|
scrambler.Scramble(a1a);
|
||||||
scrambler.Scramble(a2a);
|
scrambler.Scramble(a2a);
|
||||||
scrambler.Scramble(a3a);
|
scrambler.Scramble(a3a);
|
||||||
|
|
||||||
db.UpdateAsset(a1a);
|
db.StoreAsset(a1a);
|
||||||
db.UpdateAsset(a2a);
|
db.StoreAsset(a2a);
|
||||||
db.UpdateAsset(a3a);
|
db.StoreAsset(a3a);
|
||||||
|
|
||||||
AssetBase a1b = db.FetchAsset(uuid1);
|
AssetBase a1b = db.GetAsset(uuid1);
|
||||||
Assert.That(a1b, Constraints.PropertyCompareConstraint(a1a));
|
Assert.That(a1b, Constraints.PropertyCompareConstraint(a1a));
|
||||||
|
|
||||||
AssetBase a2b = db.FetchAsset(uuid2);
|
AssetBase a2b = db.GetAsset(uuid2);
|
||||||
Assert.That(a2b, Constraints.PropertyCompareConstraint(a2a));
|
Assert.That(a2b, Constraints.PropertyCompareConstraint(a2a));
|
||||||
|
|
||||||
AssetBase a3b = db.FetchAsset(uuid3);
|
AssetBase a3b = db.GetAsset(uuid3);
|
||||||
Assert.That(a3b, Constraints.PropertyCompareConstraint(a3a));
|
Assert.That(a3b, Constraints.PropertyCompareConstraint(a3a));
|
||||||
|
|
||||||
Assert.That(db.ExistsAsset(uuid1), Is.True);
|
Assert.That(db.ExistsAsset(uuid1), Is.True);
|
||||||
|
|
|
@ -70,7 +70,7 @@ namespace OpenSim.Data.Tests
|
||||||
reg.Uuid = regionUUID;
|
reg.Uuid = regionUUID;
|
||||||
reg.RegionName = regionName;
|
reg.RegionName = regionName;
|
||||||
|
|
||||||
db.AddProfile(reg);
|
db.StoreProfile(reg);
|
||||||
|
|
||||||
return reg;
|
return reg;
|
||||||
}
|
}
|
||||||
|
@ -120,7 +120,7 @@ namespace OpenSim.Data.Tests
|
||||||
RegionProfileData retreg = db.GetProfileByUUID(region2);
|
RegionProfileData retreg = db.GetProfileByUUID(region2);
|
||||||
retreg.regionName = "Gotham City";
|
retreg.regionName = "Gotham City";
|
||||||
|
|
||||||
db.UpdateProfile(retreg);
|
db.StoreProfile(retreg);
|
||||||
|
|
||||||
retreg = db.GetProfileByUUID(region2);
|
retreg = db.GetProfileByUUID(region2);
|
||||||
Assert.That(retreg.RegionName, Is.EqualTo("Gotham City"), "Assert.That(retreg.RegionName, Is.EqualTo(\"Gotham City\"))");
|
Assert.That(retreg.RegionName, Is.EqualTo("Gotham City"), "Assert.That(retreg.RegionName, Is.EqualTo(\"Gotham City\"))");
|
||||||
|
@ -135,13 +135,13 @@ namespace OpenSim.Data.Tests
|
||||||
retreg.RegionName = "Gotham Town";
|
retreg.RegionName = "Gotham Town";
|
||||||
retreg.Uuid = region1;
|
retreg.Uuid = region1;
|
||||||
|
|
||||||
db.AddProfile(retreg);
|
db.StoreProfile(retreg);
|
||||||
|
|
||||||
retreg = db.GetProfileByUUID(region2);
|
retreg = db.GetProfileByUUID(region2);
|
||||||
retreg.RegionName = "Gothan Town";
|
retreg.RegionName = "Gothan Town";
|
||||||
retreg.Uuid = region3;
|
retreg.Uuid = region3;
|
||||||
|
|
||||||
db.AddProfile(retreg);
|
db.StoreProfile(retreg);
|
||||||
|
|
||||||
List<RegionProfileData> listreg = db.GetRegionsByName("Gotham",10);
|
List<RegionProfileData> listreg = db.GetRegionsByName("Gotham",10);
|
||||||
|
|
||||||
|
|
|
@ -184,7 +184,7 @@ namespace OpenSim.Framework.Communications.Cache
|
||||||
// Commented out for now. The implementation needs to be improved by protecting against race conditions,
|
// Commented out for now. The implementation needs to be improved by protecting against race conditions,
|
||||||
// probably by making sure that the update doesn't use the UserCacheInfo.UserProfile directly (possibly via
|
// probably by making sure that the update doesn't use the UserCacheInfo.UserProfile directly (possibly via
|
||||||
// returning a read only class from the cache).
|
// returning a read only class from the cache).
|
||||||
// public bool UpdateProfile(UserProfileData userProfile)
|
// public bool StoreProfile(UserProfileData userProfile)
|
||||||
// {
|
// {
|
||||||
// lock (m_userProfilesById)
|
// lock (m_userProfilesById)
|
||||||
// {
|
// {
|
||||||
|
|
|
@ -110,14 +110,14 @@ namespace OpenSim.Framework.Communications.Tests
|
||||||
IUserDataPlugin userDataPlugin = commsManager.UserDataPlugin;
|
IUserDataPlugin userDataPlugin = commsManager.UserDataPlugin;
|
||||||
|
|
||||||
// Check that we can't update info before it exists
|
// Check that we can't update info before it exists
|
||||||
Assert.That(userCacheService.UpdateProfile(newProfile), Is.False);
|
Assert.That(userCacheService.StoreProfile(newProfile), Is.False);
|
||||||
Assert.That(userDataPlugin.GetUserByUUID(userId), Is.Null);
|
Assert.That(userDataPlugin.GetUserByUUID(userId), Is.Null);
|
||||||
|
|
||||||
// Check that we can update a profile once it exists
|
// Check that we can update a profile once it exists
|
||||||
LocalUserServices lus = (LocalUserServices)commsManager.UserService;
|
LocalUserServices lus = (LocalUserServices)commsManager.UserService;
|
||||||
lus.AddUser(firstName, originalLastName, "pingu", "ted@excellentadventure.com", 1000, 1000, userId);
|
lus.AddUser(firstName, originalLastName, "pingu", "ted@excellentadventure.com", 1000, 1000, userId);
|
||||||
|
|
||||||
Assert.That(userCacheService.UpdateProfile(newProfile), Is.True);
|
Assert.That(userCacheService.StoreProfile(newProfile), Is.True);
|
||||||
UserProfileData retrievedProfile = userCacheService.GetUserDetails(userId).UserProfile;
|
UserProfileData retrievedProfile = userCacheService.GetUserDetails(userId).UserProfile;
|
||||||
Assert.That(retrievedProfile.SurName, Is.EqualTo(newLastName));
|
Assert.That(retrievedProfile.SurName, Is.EqualTo(newLastName));
|
||||||
Assert.That(userDataPlugin.GetUserByUUID(userId).SurName, Is.EqualTo(newLastName));
|
Assert.That(userDataPlugin.GetUserByUUID(userId).SurName, Is.EqualTo(newLastName));
|
||||||
|
|
|
@ -57,7 +57,7 @@ namespace OpenSim.Framework.Servers
|
||||||
|
|
||||||
protected override AssetBase GetAsset(UUID assetID)
|
protected override AssetBase GetAsset(UUID assetID)
|
||||||
{
|
{
|
||||||
return m_assetProvider.FetchAsset(assetID);
|
return m_assetProvider.GetAsset(assetID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,7 +57,7 @@ namespace OpenSim.Framework.Servers
|
||||||
AssetBase asset = (AssetBase) xs.Deserialize(request);
|
AssetBase asset = (AssetBase) xs.Deserialize(request);
|
||||||
|
|
||||||
m_log.InfoFormat("[REST]: Creating asset {0}", asset.FullID);
|
m_log.InfoFormat("[REST]: Creating asset {0}", asset.FullID);
|
||||||
m_assetProvider.CreateAsset(asset);
|
m_assetProvider.StoreAsset(asset);
|
||||||
|
|
||||||
return new byte[] {};
|
return new byte[] {};
|
||||||
}
|
}
|
||||||
|
|
|
@ -128,7 +128,7 @@ namespace OpenSim.Framework.Servers.Tests
|
||||||
IAssetDataPlugin assetDataPlugin = new TestAssetDataPlugin();
|
IAssetDataPlugin assetDataPlugin = new TestAssetDataPlugin();
|
||||||
handler = new GetAssetStreamHandler(assetDataPlugin);
|
handler = new GetAssetStreamHandler(assetDataPlugin);
|
||||||
|
|
||||||
assetDataPlugin.CreateAsset(asset);
|
assetDataPlugin.StoreAsset(asset);
|
||||||
return asset;
|
return asset;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,7 +57,7 @@ namespace OpenSim.Grid.AssetInventoryServer.Plugins.OpenSim
|
||||||
metadata = null;
|
metadata = null;
|
||||||
BackendResponse ret;
|
BackendResponse ret;
|
||||||
|
|
||||||
AssetBase asset = m_assetProvider.FetchAsset(assetID);
|
AssetBase asset = m_assetProvider.GetAsset(assetID);
|
||||||
|
|
||||||
if (asset == null) ret = BackendResponse.NotFound;
|
if (asset == null) ret = BackendResponse.NotFound;
|
||||||
else
|
else
|
||||||
|
@ -75,7 +75,7 @@ namespace OpenSim.Grid.AssetInventoryServer.Plugins.OpenSim
|
||||||
assetData = null;
|
assetData = null;
|
||||||
BackendResponse ret;
|
BackendResponse ret;
|
||||||
|
|
||||||
AssetBase asset = m_assetProvider.FetchAsset(assetID);
|
AssetBase asset = m_assetProvider.GetAsset(assetID);
|
||||||
|
|
||||||
if (asset == null) ret = BackendResponse.NotFound;
|
if (asset == null) ret = BackendResponse.NotFound;
|
||||||
else
|
else
|
||||||
|
@ -90,7 +90,7 @@ namespace OpenSim.Grid.AssetInventoryServer.Plugins.OpenSim
|
||||||
|
|
||||||
public BackendResponse TryFetchDataMetadata(UUID assetID, out AssetBase asset)
|
public BackendResponse TryFetchDataMetadata(UUID assetID, out AssetBase asset)
|
||||||
{
|
{
|
||||||
asset = m_assetProvider.FetchAsset(assetID);
|
asset = m_assetProvider.GetAsset(assetID);
|
||||||
|
|
||||||
if (asset == null) return BackendResponse.NotFound;
|
if (asset == null) return BackendResponse.NotFound;
|
||||||
|
|
||||||
|
@ -107,7 +107,7 @@ namespace OpenSim.Grid.AssetInventoryServer.Plugins.OpenSim
|
||||||
{
|
{
|
||||||
BackendResponse ret;
|
BackendResponse ret;
|
||||||
|
|
||||||
m_assetProvider.CreateAsset(asset);
|
m_assetProvider.StoreAsset(asset);
|
||||||
ret = BackendResponse.Success;
|
ret = BackendResponse.Success;
|
||||||
|
|
||||||
m_server.MetricsProvider.LogAssetCreate(EXTENSION_NAME, ret, asset.FullID, asset.Data.Length, DateTime.Now);
|
m_server.MetricsProvider.LogAssetCreate(EXTENSION_NAME, ret, asset.FullID, asset.Data.Length, DateTime.Now);
|
||||||
|
|
|
@ -140,7 +140,7 @@ namespace OpenSim.Grid.AssetServer
|
||||||
|
|
||||||
protected void StoreAsset(AssetBase asset)
|
protected void StoreAsset(AssetBase asset)
|
||||||
{
|
{
|
||||||
m_assetProvider.CreateAsset(asset);
|
m_assetProvider.StoreAsset(asset);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -206,11 +206,11 @@ namespace OpenSim.Grid.GridServer.Modules
|
||||||
{
|
{
|
||||||
if (existingSim == null)
|
if (existingSim == null)
|
||||||
{
|
{
|
||||||
insertResponse = plugin.AddProfile(sim);
|
insertResponse = plugin.StoreProfile(sim);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
insertResponse = plugin.UpdateProfile(sim);
|
insertResponse = plugin.StoreProfile(sim);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
|
@ -259,7 +259,7 @@ namespace OpenSim.Grid.GridServer.Modules
|
||||||
if ((reserveData != null && reserveData.gridRecvKey == theSim.regionRecvKey) ||
|
if ((reserveData != null && reserveData.gridRecvKey == theSim.regionRecvKey) ||
|
||||||
(reserveData == null && authkeynode.InnerText != theSim.regionRecvKey))
|
(reserveData == null && authkeynode.InnerText != theSim.regionRecvKey))
|
||||||
{
|
{
|
||||||
plugin.AddProfile(theSim);
|
plugin.StoreProfile(theSim);
|
||||||
m_log.Info("[grid]: New sim added to grid (" + theSim.regionName + ")");
|
m_log.Info("[grid]: New sim added to grid (" + theSim.regionName + ")");
|
||||||
logToDB(theSim.ToString(), "RestSetSimMethod", String.Empty, 5,
|
logToDB(theSim.ToString(), "RestSetSimMethod", String.Empty, 5,
|
||||||
"Region successfully updated and connected to grid.");
|
"Region successfully updated and connected to grid.");
|
||||||
|
|
|
@ -83,7 +83,7 @@ namespace OpenSim.Services.AssetService
|
||||||
if (!UUID.TryParse(id, out assetID))
|
if (!UUID.TryParse(id, out assetID))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
return m_Database.FetchAsset(assetID);
|
return m_Database.GetAsset(assetID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AssetMetadata GetMetadata(string id)
|
public AssetMetadata GetMetadata(string id)
|
||||||
|
@ -93,7 +93,7 @@ namespace OpenSim.Services.AssetService
|
||||||
if (!UUID.TryParse(id, out assetID))
|
if (!UUID.TryParse(id, out assetID))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
AssetBase asset = m_Database.FetchAsset(assetID);
|
AssetBase asset = m_Database.GetAsset(assetID);
|
||||||
return asset.Metadata;
|
return asset.Metadata;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ namespace OpenSim.Services.AssetService
|
||||||
if (!UUID.TryParse(id, out assetID))
|
if (!UUID.TryParse(id, out assetID))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
AssetBase asset = m_Database.FetchAsset(assetID);
|
AssetBase asset = m_Database.GetAsset(assetID);
|
||||||
return asset.Data;
|
return asset.Data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,7 +117,7 @@ namespace OpenSim.Services.AssetService
|
||||||
if (!UUID.TryParse(id, out assetID))
|
if (!UUID.TryParse(id, out assetID))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
AssetBase asset = m_Database.FetchAsset(assetID);
|
AssetBase asset = m_Database.GetAsset(assetID);
|
||||||
|
|
||||||
//m_log.DebugFormat("[AssetService]: Got asset {0}", asset);
|
//m_log.DebugFormat("[AssetService]: Got asset {0}", asset);
|
||||||
|
|
||||||
|
@ -129,7 +129,7 @@ namespace OpenSim.Services.AssetService
|
||||||
public string Store(AssetBase asset)
|
public string Store(AssetBase asset)
|
||||||
{
|
{
|
||||||
//m_log.DebugFormat("[ASSET SERVICE]: Store asset {0} {1}", asset.Name, asset.ID);
|
//m_log.DebugFormat("[ASSET SERVICE]: Store asset {0} {1}", asset.Name, asset.ID);
|
||||||
m_Database.CreateAsset(asset);
|
m_Database.StoreAsset(asset);
|
||||||
|
|
||||||
return asset.ID;
|
return asset.ID;
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
* 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.Collections.Generic;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -46,6 +47,18 @@ namespace OpenSim.Tests.Common.Mock
|
||||||
public void Initialise(string connect) {}
|
public void Initialise(string connect) {}
|
||||||
public void Dispose() {}
|
public void Dispose() {}
|
||||||
|
|
||||||
|
private readonly List<AssetBase> assets = new List<AssetBase>();
|
||||||
|
|
||||||
|
public AssetBase GetAsset(UUID uuid)
|
||||||
|
{
|
||||||
|
return assets.Find(x=>x.FullID == uuid);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StoreAsset(AssetBase asset)
|
||||||
|
{
|
||||||
|
assets.Add(asset);
|
||||||
|
}
|
||||||
|
|
||||||
public List<AssetMetadata> FetchAssetMetadataSet(int start, int count) { return new List<AssetMetadata>(count); }
|
public List<AssetMetadata> FetchAssetMetadataSet(int start, int count) { return new List<AssetMetadata>(count); }
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue