moved fields to properties for UserDataProfile, which was

actually a little more work than I expected given the copious
use of out params.
This commit is contained in:
Sean Dague
2008-04-10 13:53:06 +00:00
parent 1178eddffc
commit c176caeb05
24 changed files with 591 additions and 378 deletions

View File

@@ -427,60 +427,71 @@ namespace OpenSim.Data.MySQL
if (reader.Read())
{
if (!LLUUID.TryParse((string)reader["UUID"], out retval.UUID))
LLUUID id;
if (!LLUUID.TryParse((string)reader["UUID"], out id))
return null;
retval.username = (string) reader["username"];
retval.surname = (string) reader["lastname"];
retval.passwordHash = (string) reader["passwordHash"];
retval.passwordSalt = (string) reader["passwordSalt"];
retval.Id = id;
retval.FirstName = (string) reader["username"];
retval.SurName = (string) reader["lastname"];
retval.homeRegion = Convert.ToUInt64(reader["homeRegion"].ToString());
retval.homeLocation = new LLVector3(
retval.PasswordHash = (string) reader["passwordHash"];
retval.PasswordSalt = (string) reader["passwordSalt"];
retval.HomeRegion = Convert.ToUInt64(reader["homeRegion"].ToString());
retval.HomeLocation = new LLVector3(
Convert.ToSingle(reader["homeLocationX"].ToString()),
Convert.ToSingle(reader["homeLocationY"].ToString()),
Convert.ToSingle(reader["homeLocationZ"].ToString()));
retval.homeLookAt = new LLVector3(
retval.HomeLookAt = new LLVector3(
Convert.ToSingle(reader["homeLookAtX"].ToString()),
Convert.ToSingle(reader["homeLookAtY"].ToString()),
Convert.ToSingle(reader["homeLookAtZ"].ToString()));
retval.created = Convert.ToInt32(reader["created"].ToString());
retval.lastLogin = Convert.ToInt32(reader["lastLogin"].ToString());
retval.Created = Convert.ToInt32(reader["created"].ToString());
retval.LastLogin = Convert.ToInt32(reader["lastLogin"].ToString());
retval.userInventoryURI = (string) reader["userInventoryURI"];
retval.userAssetURI = (string) reader["userAssetURI"];
retval.UserInventoryURI = (string) reader["userInventoryURI"];
retval.UserAssetURI = (string) reader["userAssetURI"];
retval.profileCanDoMask = Convert.ToUInt32(reader["profileCanDoMask"].ToString());
retval.profileWantDoMask = Convert.ToUInt32(reader["profileWantDoMask"].ToString());
retval.ProfileCanDoMask = Convert.ToUInt32(reader["profileCanDoMask"].ToString());
retval.ProfileWantDoMask = Convert.ToUInt32(reader["profileWantDoMask"].ToString());
if (reader.IsDBNull(reader.GetOrdinal("profileAboutText")))
retval.profileAboutText = "";
retval.ProfileAboutText = "";
else
retval.profileAboutText = (string) reader["profileAboutText"];
retval.ProfileAboutText = (string) reader["profileAboutText"];
if (reader.IsDBNull(reader.GetOrdinal("profileFirstText")))
retval.profileFirstText = "";
retval.ProfileFirstText = "";
else
retval.profileFirstText = (string)reader["profileFirstText"];
retval.ProfileFirstText = (string)reader["profileFirstText"];
if (reader.IsDBNull(reader.GetOrdinal("profileImage")))
retval.profileImage = LLUUID.Zero;
else
LLUUID.TryParse((string)reader["profileImage"], out retval.profileImage);
retval.ProfileImage = LLUUID.Zero;
else {
LLUUID tmp;
LLUUID.TryParse((string)reader["profileImage"], out tmp);
retval.ProfileImage = tmp;
}
if (reader.IsDBNull(reader.GetOrdinal("profileFirstImage")))
retval.profileFirstImage = LLUUID.Zero;
else
LLUUID.TryParse((string)reader["profileFirstImage"], out retval.profileFirstImage);
retval.ProfileFirstImage = LLUUID.Zero;
else {
LLUUID tmp;
LLUUID.TryParse((string)reader["profileFirstImage"], out tmp);
retval.ProfileFirstImage = tmp;
}
if(reader.IsDBNull(reader.GetOrdinal("webLoginKey")))
{
retval.webLoginKey = LLUUID.Zero;
retval.WebLoginKey = LLUUID.Zero;
}
else
{
LLUUID.TryParse((string)reader["webLoginKey"], out retval.webLoginKey);
LLUUID tmp;
LLUUID.TryParse((string)reader["webLoginKey"], out tmp);
retval.WebLoginKey = tmp;
}
}
else

View File

@@ -475,7 +475,7 @@ namespace OpenSim.Data.MySQL
override public UserAgentData GetAgentByName(string user, string last)
{
UserProfileData profile = GetUserByName(user, last);
return GetAgentByUUID(profile.UUID);
return GetAgentByUUID(profile.Id);
}
override public void StoreWebLoginKey(LLUUID AgentID, LLUUID WebLoginKey)
@@ -547,14 +547,14 @@ namespace OpenSim.Data.MySQL
{
lock (database)
{
database.insertUserRow(user.UUID, user.username, user.surname, user.passwordHash, user.passwordSalt,
user.homeRegion, user.homeLocation.X, user.homeLocation.Y,
user.homeLocation.Z,
user.homeLookAt.X, user.homeLookAt.Y, user.homeLookAt.Z, user.created,
user.lastLogin, user.userInventoryURI, user.userAssetURI,
user.profileCanDoMask, user.profileWantDoMask,
user.profileAboutText, user.profileFirstText, user.profileImage,
user.profileFirstImage, user.webLoginKey);
database.insertUserRow(user.Id, user.FirstName, user.SurName, user.PasswordHash, user.PasswordSalt,
user.HomeRegion, user.HomeLocation.X, user.HomeLocation.Y,
user.HomeLocation.Z,
user.HomeLookAt.X, user.HomeLookAt.Y, user.HomeLookAt.Z, user.Created,
user.LastLogin, user.UserInventoryURI, user.UserAssetURI,
user.ProfileCanDoMask, user.ProfileWantDoMask,
user.ProfileAboutText, user.ProfileFirstText, user.ProfileImage,
user.ProfileFirstImage, user.WebLoginKey);
}
}
catch (Exception e)
@@ -590,11 +590,11 @@ namespace OpenSim.Data.MySQL
/// <param name="user">The profile data to use to update the DB</param>
override public bool UpdateUserProfile(UserProfileData user)
{
database.updateUserRow(user.UUID, user.username, user.surname, user.passwordHash, user.passwordSalt,
user.homeRegion, user.homeLocation.X, user.homeLocation.Y, user.homeLocation.Z, user.homeLookAt.X,
user.homeLookAt.Y, user.homeLookAt.Z, user.created, user.lastLogin, user.userInventoryURI,
user.userAssetURI, user.profileCanDoMask, user.profileWantDoMask, user.profileAboutText,
user.profileFirstText, user.profileImage, user.profileFirstImage, user.webLoginKey);
database.updateUserRow(user.Id, user.FirstName, user.SurName, user.PasswordHash, user.PasswordSalt,
user.HomeRegion, user.HomeLocation.X, user.HomeLocation.Y, user.HomeLocation.Z, user.HomeLookAt.X,
user.HomeLookAt.Y, user.HomeLookAt.Z, user.Created, user.LastLogin, user.UserInventoryURI,
user.UserAssetURI, user.ProfileCanDoMask, user.ProfileWantDoMask, user.ProfileAboutText,
user.ProfileFirstText, user.ProfileImage, user.ProfileFirstImage, user.WebLoginKey);
return true;
}