SampleMoneyModule: add private xmlrpc methods
							parent
							
								
									c2c00c5d84
								
							
						
					
					
						commit
						72c1c923f8
					
				|  | @ -1104,7 +1104,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|         /// <param name="response"></param> | ||||
|         public void HandleXmlRpcRequests(OSHttpRequest request, OSHttpResponse response) | ||||
|         { | ||||
|             String requestBody; | ||||
|             String requestBody = null; | ||||
| 
 | ||||
|             Stream requestStream = request.InputStream; | ||||
|             Stream innerStream = null; | ||||
|  | @ -1119,6 +1119,10 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|                 using (StreamReader reader = new StreamReader(requestStream, Encoding.UTF8)) | ||||
|                     requestBody = reader.ReadToEnd(); | ||||
|             } | ||||
|             catch | ||||
|             { | ||||
|                 requestBody = null; | ||||
|             } | ||||
|             finally | ||||
|             { | ||||
|                 if (innerStream != null && innerStream.CanRead) | ||||
|  | @ -1127,6 +1131,13 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|                     requestStream.Dispose(); | ||||
|             } | ||||
| 
 | ||||
|             if (string.IsNullOrWhiteSpace(requestBody)) | ||||
|             { | ||||
|                 response.StatusCode = (int)HttpStatusCode.NotFound; | ||||
|                 response.KeepAlive = false; | ||||
|                 return; | ||||
|             } | ||||
| 
 | ||||
|             //m_log.Debug(requestBody); | ||||
|             requestBody = requestBody.Replace("<base64></base64>", ""); | ||||
| 
 | ||||
|  | @ -1274,9 +1285,9 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|             response.StatusCode = (int)HttpStatusCode.OK; | ||||
|         } | ||||
| 
 | ||||
|         public void HandleXmlRpcRequests(OSHttpRequest request, OSHttpResponse response, Dictionary<string, XmlRpcMethod> rpchandlers) | ||||
|         public void HandleXmlRpcRequests(OSHttpRequest request, OSHttpResponse response, Dictionary<string, XmlRpcMethod> rpcHandlers) | ||||
|         { | ||||
|             String requestBody; | ||||
|             String requestBody = null; | ||||
| 
 | ||||
|             Stream requestStream = request.InputStream; | ||||
|             Stream innerStream = null; | ||||
|  | @ -1291,6 +1302,10 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|                 using (StreamReader reader = new StreamReader(requestStream, Encoding.UTF8)) | ||||
|                     requestBody = reader.ReadToEnd(); | ||||
|             } | ||||
|             catch | ||||
|             { | ||||
|                 requestBody = null; | ||||
|             } | ||||
|             finally | ||||
|             { | ||||
|                 if (innerStream != null && innerStream.CanRead) | ||||
|  | @ -1299,6 +1314,13 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|                     requestStream.Dispose(); | ||||
|             } | ||||
| 
 | ||||
|             if (string.IsNullOrWhiteSpace(requestBody)) | ||||
|             { | ||||
|                 response.StatusCode = (int)HttpStatusCode.NotFound; | ||||
|                 response.KeepAlive = false; | ||||
|                 return; | ||||
|             } | ||||
| 
 | ||||
|             //m_log.Debug(requestBody); | ||||
|             requestBody = requestBody.Replace("<base64></base64>", ""); | ||||
| 
 | ||||
|  | @ -1357,7 +1379,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|             XmlRpcMethod method; | ||||
|             bool methodWasFound; | ||||
| 
 | ||||
|             methodWasFound = rpchandlers.TryGetValue(methodName, out method); | ||||
|             methodWasFound = rpcHandlers.TryGetValue(methodName, out method); | ||||
| 
 | ||||
|             XmlRpcResponse xmlRpcResponse; | ||||
|             if (methodWasFound) | ||||
|  |  | |||
|  | @ -65,6 +65,8 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule | |||
|         /// </summary> | ||||
|         // private UUID EconomyBaseAccount = UUID.Zero; | ||||
| 
 | ||||
|         private Dictionary<string, XmlRpcMethod> m_rpcHandlers; | ||||
| 
 | ||||
|         private float EnergyEfficiency = 1f; | ||||
|         // private ObjectPaid handerOnObjectPaid; | ||||
|         private bool m_enabled = true; | ||||
|  | @ -145,12 +147,12 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule | |||
|                         // to the command line parameters you use to start up your client | ||||
|                         // This commonly looks like -helperuri http://127.0.0.1:9000/ | ||||
| 
 | ||||
|                         m_rpcHandlers = new Dictionary<string, XmlRpcMethod>(); | ||||
| 
 | ||||
|                         // Local Server..  enables functionality only. | ||||
|                         httpServer.AddXmlRPCHandler("getCurrencyQuote", quote_func); | ||||
|                         httpServer.AddXmlRPCHandler("buyCurrency", buy_func); | ||||
|                         httpServer.AddXmlRPCHandler("preflightBuyLandPrep", preflightBuyLandPrep_func); | ||||
|                         httpServer.AddXmlRPCHandler("buyLandPrep", landBuy_func); | ||||
|                         m_rpcHandlers.Add("getCurrencyQuote", quote_func); | ||||
|                         m_rpcHandlers.Add("buyCurrency", buy_func); | ||||
|                         m_rpcHandlers.Add("preflightBuyLandPrep", preflightBuyLandPrep_func); | ||||
|                         m_rpcHandlers.Add("buyLandPrep", landBuy_func); | ||||
| 
 | ||||
|                         // add php | ||||
|                         MainServer.Instance.AddSimpleStreamHandler(new SimpleStreamHandler("/currency.php", processPHP)); | ||||
|  | @ -188,7 +190,7 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule | |||
| 
 | ||||
|         public void processPHP(IOSHttpRequest request, IOSHttpResponse response) | ||||
|         { | ||||
|             MainServer.Instance.HandleXmlRpcRequests((OSHttpRequest)request, (OSHttpResponse)response); | ||||
|             MainServer.Instance.HandleXmlRpcRequests((OSHttpRequest)request, (OSHttpResponse)response, m_rpcHandlers); | ||||
|         } | ||||
| 
 | ||||
|         // Please do not refactor these to be just one method | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 UbitUmarov
						UbitUmarov