Introduce IXmlRpcRouter, an interface that allows registering XMLRPC

UUIDs with a central marshaller for grids, or publish the ULS for objects
elsewhere.
This commit is contained in:
Melanie Thielker
2009-04-10 21:08:33 +00:00
parent b43226019a
commit 8902923b12
6 changed files with 76 additions and 1 deletions

View File

@@ -6108,6 +6108,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
if (xmlrpcMod.IsEnabled())
{
UUID channelID = xmlrpcMod.OpenXMLRPCChannel(m_localID, m_itemID, UUID.Zero);
IXmlRpcRouter xmlRpcRouter = m_ScriptEngine.World.RequestModuleInterface<IXmlRpcRouter>();
if (xmlRpcRouter != null)
xmlRpcRouter.RegisterNewReceiver(m_ScriptEngine.ScriptModule, channelID, m_host.UUID, m_itemID, "http://"+System.Environment.MachineName+":"+xmlrpcMod.Port.ToString()+"/");
object[] resobj = new object[] { new LSL_Integer(1), new LSL_String(channelID.ToString()), new LSL_String(UUID.Zero.ToString()), new LSL_String(String.Empty), new LSL_Integer(0), new LSL_String(String.Empty) };
m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams(
"remote_data", resobj,