aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/Null/NullPresenceData.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Data/Null/NullPresenceData.cs')
-rw-r--r--OpenSim/Data/Null/NullPresenceData.cs21
1 files changed, 17 insertions, 4 deletions
diff --git a/OpenSim/Data/Null/NullPresenceData.cs b/OpenSim/Data/Null/NullPresenceData.cs
index aff0b0b..ce1404e 100644
--- a/OpenSim/Data/Null/NullPresenceData.cs
+++ b/OpenSim/Data/Null/NullPresenceData.cs
@@ -39,7 +39,7 @@ namespace OpenSim.Data.Null
39 public class NullPresenceData : IPresenceData 39 public class NullPresenceData : IPresenceData
40 { 40 {
41// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 41// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
42 42
43 public static NullPresenceData Instance; 43 public static NullPresenceData Instance;
44 44
45 Dictionary<UUID, PresenceData> m_presenceData = new Dictionary<UUID, PresenceData>(); 45 Dictionary<UUID, PresenceData> m_presenceData = new Dictionary<UUID, PresenceData>();
@@ -79,6 +79,19 @@ namespace OpenSim.Data.Null
79 return null; 79 return null;
80 } 80 }
81 81
82 public PresenceData GetByUser(UUID userID)
83 {
84 if (Instance != this)
85 return Instance.GetByUser(userID);
86
87 if (m_presenceData.ContainsKey(userID))
88 {
89 return m_presenceData[userID];
90 }
91
92 return null;
93 }
94
82 public void LogoutRegionAgents(UUID regionID) 95 public void LogoutRegionAgents(UUID regionID)
83 { 96 {
84 if (Instance != this) 97 if (Instance != this)
@@ -100,7 +113,7 @@ namespace OpenSim.Data.Null
100 { 113 {
101 if (Instance != this) 114 if (Instance != this)
102 return Instance.ReportAgent(sessionID, regionID); 115 return Instance.ReportAgent(sessionID, regionID);
103 116
104 if (m_presenceData.ContainsKey(sessionID)) 117 if (m_presenceData.ContainsKey(sessionID))
105 { 118 {
106 m_presenceData[sessionID].RegionID = regionID; 119 m_presenceData[sessionID].RegionID = regionID;
@@ -129,7 +142,7 @@ namespace OpenSim.Data.Null
129// Console.WriteLine("HOME for " + p.UserID + " is " + (p.Data.ContainsKey("HomeRegionID") ? p.Data["HomeRegionID"] : "Not found")); 142// Console.WriteLine("HOME for " + p.UserID + " is " + (p.Data.ContainsKey("HomeRegionID") ? p.Data["HomeRegionID"] : "Not found"));
130 } 143 }
131 } 144 }
132 145
133 return presences.ToArray(); 146 return presences.ToArray();
134 } 147 }
135 else if (field == "SessionID") 148 else if (field == "SessionID")
@@ -172,7 +185,7 @@ namespace OpenSim.Data.Null
172 { 185 {
173// m_log.DebugFormat( 186// m_log.DebugFormat(
174// "[NULL PRESENCE DATA]: Deleting presence data for field {0} with parameter {1}", field, data); 187// "[NULL PRESENCE DATA]: Deleting presence data for field {0} with parameter {1}", field, data);
175 188
176 if (Instance != this) 189 if (Instance != this)
177 return Instance.Delete(field, data); 190 return Instance.Delete(field, data);
178 191