aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMW2007-12-02 18:49:42 +0000
committerMW2007-12-02 18:49:42 +0000
commit5ae8759de16875309cdd0fccf5d3bb24bac483d6 (patch)
treed79c6661d5aedb417dcb86db9edc3a5e2d49f558
parentVery partial Avatar Appearance (ie, clothes/body parts) "storage". In standal... (diff)
downloadopensim-SC-5ae8759de16875309cdd0fccf5d3bb24bac483d6.zip
opensim-SC-5ae8759de16875309cdd0fccf5d3bb24bac483d6.tar.gz
opensim-SC-5ae8759de16875309cdd0fccf5d3bb24bac483d6.tar.bz2
opensim-SC-5ae8759de16875309cdd0fccf5d3bb24bac483d6.tar.xz
Added some error handling (and console output) to BaseHttpServer.
a few other bits of refactoring.
-rw-r--r--OpenSim/Framework/Servers/BaseHttpServer.cs36
-rw-r--r--OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs20
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs3
-rw-r--r--OpenSim/Region/Environment/Scenes/ScenePresence.cs3
4 files changed, 33 insertions, 29 deletions
diff --git a/OpenSim/Framework/Servers/BaseHttpServer.cs b/OpenSim/Framework/Servers/BaseHttpServer.cs
index e645e7b..baf5add 100644
--- a/OpenSim/Framework/Servers/BaseHttpServer.cs
+++ b/OpenSim/Framework/Servers/BaseHttpServer.cs
@@ -185,26 +185,34 @@ namespace OpenSim.Framework.Servers
185 if (xmlRprcRequest != null) 185 if (xmlRprcRequest != null)
186 { 186 {
187 string methodName = xmlRprcRequest.MethodName; 187 string methodName = xmlRprcRequest.MethodName;
188 if (methodName != null)
189 {
188 190
189 XmlRpcResponse xmlRpcResponse; 191 XmlRpcResponse xmlRpcResponse;
190 192
191 XmlRpcMethod method; 193 XmlRpcMethod method;
192 if (m_rpcHandlers.TryGetValue(methodName, out method)) 194 if (m_rpcHandlers.TryGetValue(methodName, out method))
193 { 195 {
194 xmlRpcResponse = method(xmlRprcRequest); 196 xmlRpcResponse = method(xmlRprcRequest);
197 }
198 else
199 {
200 xmlRpcResponse = new XmlRpcResponse();
201 Hashtable unknownMethodError = new Hashtable();
202 unknownMethodError["reason"] = "XmlRequest";
203 ;
204 unknownMethodError["message"] = "Unknown Rpc Request [" + methodName + "]";
205 unknownMethodError["login"] = "false";
206 xmlRpcResponse.Value = unknownMethodError;
207 }
208
209 responseString = XmlRpcResponseSerializer.Singleton.Serialize(xmlRpcResponse);
195 } 210 }
196 else 211 else
197 { 212 {
198 xmlRpcResponse = new XmlRpcResponse(); 213 System.Console.WriteLine("Handler not found for http request " +request.RawUrl);
199 Hashtable unknownMethodError = new Hashtable(); 214 responseString = "Error";
200 unknownMethodError["reason"] = "XmlRequest";
201 ;
202 unknownMethodError["message"] = "Unknown Rpc Request [" + methodName + "]";
203 unknownMethodError["login"] = "false";
204 xmlRpcResponse.Value = unknownMethodError;
205 } 215 }
206
207 responseString = XmlRpcResponseSerializer.Singleton.Serialize(xmlRpcResponse);
208 } 216 }
209 217
210 response.AddHeader("Content-type", "text/xml"); 218 response.AddHeader("Content-type", "text/xml");
diff --git a/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
index b6c373c..c33fdcd 100644
--- a/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
+++ b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
@@ -12,7 +12,7 @@ namespace OpenSim.Region.Environment.Modules
12 public class AvatarFactoryModule : IAvatarFactory 12 public class AvatarFactoryModule : IAvatarFactory
13 { 13 {
14 private Scene m_scene = null; 14 private Scene m_scene = null;
15 private Dictionary<LLUUID, AvatarWearing> m_avatarsClothes = new Dictionary<LLUUID, AvatarWearing>(); 15 private Dictionary<LLUUID, AvatarAppearance> m_avatarsClothes = new Dictionary<LLUUID, AvatarAppearance>();
16 16
17 public bool TryGetIntialAvatarAppearance(LLUUID avatarId, out AvatarWearable[] wearables, 17 public bool TryGetIntialAvatarAppearance(LLUUID avatarId, out AvatarWearable[] wearables,
18 out byte[] visualParams) 18 out byte[] visualParams)
@@ -20,13 +20,13 @@ namespace OpenSim.Region.Environment.Modules
20 if (!m_avatarsClothes.ContainsKey(avatarId)) 20 if (!m_avatarsClothes.ContainsKey(avatarId))
21 { 21 {
22 GetDefaultAvatarAppearance(out wearables, out visualParams); 22 GetDefaultAvatarAppearance(out wearables, out visualParams);
23 AvatarWearing wearing = new AvatarWearing(wearables); 23 AvatarAppearance wearing = new AvatarAppearance(wearables);
24 m_avatarsClothes[avatarId] = wearing; 24 m_avatarsClothes[avatarId] = wearing;
25 return true; 25 return true;
26 } 26 }
27 else 27 else
28 { 28 {
29 visualParams = SetDefaultVisualParams(); 29 visualParams = GetDefaultVisualParams();
30 wearables = m_avatarsClothes[avatarId].IsWearing; 30 wearables = m_avatarsClothes[avatarId].IsWearing;
31 return true; 31 return true;
32 } 32 }
@@ -91,7 +91,7 @@ namespace OpenSim.Region.Environment.Modules
91 //Tempoaray dictionary storage. This is be storing to a database 91 //Tempoaray dictionary storage. This is be storing to a database
92 if (m_avatarsClothes.ContainsKey(clientView.AgentId)) 92 if (m_avatarsClothes.ContainsKey(clientView.AgentId))
93 { 93 {
94 AvatarWearing avWearing = m_avatarsClothes[clientView.AgentId]; 94 AvatarAppearance avWearing = m_avatarsClothes[clientView.AgentId];
95 avWearing.IsWearing[wear.Type].AssetID = assetId; 95 avWearing.IsWearing[wear.Type].AssetID = assetId;
96 avWearing.IsWearing[wear.Type].ItemID = wear.ItemID; 96 avWearing.IsWearing[wear.Type].ItemID = wear.ItemID;
97 } 97 }
@@ -103,12 +103,11 @@ namespace OpenSim.Region.Environment.Modules
103 103
104 public static void GetDefaultAvatarAppearance(out AvatarWearable[] wearables, out byte[] visualParams) 104 public static void GetDefaultAvatarAppearance(out AvatarWearable[] wearables, out byte[] visualParams)
105 { 105 {
106 visualParams = SetDefaultVisualParams(); 106 visualParams = GetDefaultVisualParams();
107
108 wearables = AvatarWearable.DefaultWearables; 107 wearables = AvatarWearable.DefaultWearables;
109 } 108 }
110 109
111 private static byte[] SetDefaultVisualParams() 110 private static byte[] GetDefaultVisualParams()
112 { 111 {
113 byte[] visualParams; 112 byte[] visualParams;
114 visualParams = new byte[218]; 113 visualParams = new byte[218];
@@ -119,11 +118,12 @@ namespace OpenSim.Region.Environment.Modules
119 return visualParams; 118 return visualParams;
120 } 119 }
121 120
122 public class AvatarWearing 121 public class AvatarAppearance
123 { 122 {
124 public AvatarWearable[] IsWearing; 123 public AvatarWearable[] IsWearing;
124 public byte[] VisualParams;
125 125
126 public AvatarWearing() 126 public AvatarAppearance()
127 { 127 {
128 IsWearing = new AvatarWearable[13]; 128 IsWearing = new AvatarWearable[13];
129 for (int i = 0; i < 13; i++) 129 for (int i = 0; i < 13; i++)
@@ -132,7 +132,7 @@ namespace OpenSim.Region.Environment.Modules
132 } 132 }
133 } 133 }
134 134
135 public AvatarWearing(AvatarWearable[] wearing) 135 public AvatarAppearance(AvatarWearable[] wearing)
136 { 136 {
137 if (wearing.Length == 13) 137 if (wearing.Length == 13)
138 { 138 {
diff --git a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
index 435022b..745345d 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
@@ -190,9 +190,6 @@ namespace OpenSim.Region.Environment.Scenes
190 } 190 }
191 replyPacket.Data = searchData; 191 replyPacket.Data = searchData;
192 client.SendAvatarPickerReply(replyPacket); 192 client.SendAvatarPickerReply(replyPacket);
193
194
195 } 193 }
196
197 } 194 }
198} \ No newline at end of file 195} \ No newline at end of file
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
index 46079bb..2ef27fd 100644
--- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
@@ -511,8 +511,7 @@ namespace OpenSim.Region.Environment.Scenes
511 for (int i = 0; i < visualParam.Length; i++) 511 for (int i = 0; i < visualParam.Length; i++)
512 { 512 {
513 m_visualParams[i] = visualParam[i].ParamValue; 513 m_visualParams[i] = visualParam[i].ParamValue;
514 //OpenSim.Framework.Console.MainLog.Instance.Verbose("CLIENT", "VisualData[" + i.ToString() + "]: " + visualParam[i].ParamValue.ToString() + "m"); 514 //OpenSim.Framework.Console.MainLog.Instance.Verbose("CLIENT", "VisualData[" + i.ToString() + "]: " + visualParam[i].ParamValue.ToString() + "m");
515
516 } 515 }
517 516
518 // Teravus : Nifty AV Height Getting Maaaaagical formula. Oh how we love turning 0-255 into meters. 517 // Teravus : Nifty AV Height Getting Maaaaagical formula. Oh how we love turning 0-255 into meters.