Merge branch 'master' into careminster-presence-refactor

This commit is contained in:
Melanie
2010-05-09 17:04:23 +01:00
16 changed files with 149 additions and 157 deletions

View File

@@ -181,6 +181,7 @@ namespace OpenSim.Services.AssetService
MainConsole.Instance.Output(String.Format("Description: {0}", asset.Description));
MainConsole.Instance.Output(String.Format("Type: {0}", asset.Type));
MainConsole.Instance.Output(String.Format("Content-type: {0}", asset.Metadata.ContentType));
MainConsole.Instance.Output(String.Format("Flags: {0}", asset.Metadata.Flags.ToString()));
for (i = 0 ; i < 5 ; i++)
{

View File

@@ -511,20 +511,8 @@ namespace OpenSim.Services.Connectors.SimianGrid
PresenceInfo info = new PresenceInfo();
info.Online = true;
info.UserID = sessionResponse["UserID"].AsUUID().ToString();
info.RegionID = sessionResponse["SceneID"].AsUUID();
info.Position = sessionResponse["ScenePosition"].AsVector3();
info.LookAt = sessionResponse["SceneLookAt"].AsVector3();
if (userResponse != null && userResponse["User"] is OSDMap)
{
OSDMap user = (OSDMap)userResponse["User"];
info.Login = user["LastLoginDate"].AsDate();
info.Logout = user["LastLogoutDate"].AsDate();
DeserializeLocation(user["HomeLocation"].AsString(), out info.HomeRegionID, out info.HomePosition, out info.HomeLookAt);
}
return info;
}

View File

@@ -185,6 +185,10 @@ namespace OpenSim.Services.HypergridService
foreach (UUID session in travels)
m_TravelingAgents.Remove(session);
}
GridUserInfo guinfo = m_GridUserService.GetGridUserInfo(userID.ToString());
if (guinfo != null)
m_GridUserService.LoggedOut(userID.ToString(), guinfo.LastRegionID, guinfo.LastPosition, guinfo.LastLookAt);
}
// We need to prevent foreign users with the same UUID as a local user

View File

@@ -36,14 +36,6 @@ namespace OpenSim.Services.Interfaces
{
public string UserID;
public UUID RegionID;
public bool Online;
public DateTime Login;
public DateTime Logout;
public Vector3 Position;
public Vector3 LookAt;
public UUID HomeRegionID;
public Vector3 HomePosition;
public Vector3 HomeLookAt;
public PresenceInfo()
{
@@ -65,26 +57,6 @@ namespace OpenSim.Services.Interfaces
return result;
}
public static PresenceInfo[] GetOnlinePresences(PresenceInfo[] pinfos)
{
if (pinfos == null)
return null;
List<PresenceInfo> lst = new List<PresenceInfo>(pinfos);
lst = lst.FindAll(delegate(PresenceInfo each) { return each.Online; });
return lst.ToArray();
}
public static PresenceInfo GetOnlinePresence(PresenceInfo[] pinfos)
{
pinfos = GetOnlinePresences(pinfos);
if (pinfos != null && pinfos.Length >= 1)
return pinfos[0];
return null;
}
}
public interface IPresenceService

View File

@@ -115,10 +115,6 @@ namespace OpenSim.Services.PresenceService
ret.UserID = data.UserID;
ret.RegionID = data.RegionID;
if (data.Data.ContainsKey("Position"))
ret.Position = Vector3.Parse(data.Data["Position"]);
if (data.Data.ContainsKey("LookAt"))
ret.LookAt = Vector3.Parse(data.Data["LookAt"]);
return ret;
}
@@ -138,8 +134,6 @@ namespace OpenSim.Services.PresenceService
ret.UserID = d.UserID;
ret.RegionID = d.RegionID;
ret.Position = Vector3.Parse(d.Data["Position"]);
ret.LookAt = Vector3.Parse(d.Data["LookAt"]);
info.Add(ret);
}