Merge branch 'ubitwork' of ssh://3dhosting.de/var/git/careminster into ubitwork

avinationmerge
ubit 2012-09-26 17:18:31 +02:00
commit b07b29c247
7 changed files with 7 additions and 29 deletions

View File

@ -317,6 +317,7 @@ namespace OpenSim.Framework.Servers.HttpServer
StreamReader reader = new StreamReader(requestStream, encoding); StreamReader reader = new StreamReader(requestStream, encoding);
string requestBody = reader.ReadToEnd(); string requestBody = reader.ReadToEnd();
reader.Close();
Hashtable keysvals = new Hashtable(); Hashtable keysvals = new Hashtable();
Hashtable headervals = new Hashtable(); Hashtable headervals = new Hashtable();

View File

@ -34,7 +34,7 @@ namespace OpenSim.Framework.Servers.HttpServer
public delegate void RequestMethod(UUID requestID, Hashtable request); public delegate void RequestMethod(UUID requestID, Hashtable request);
public delegate bool HasEventsMethod(UUID requestID, UUID pId); public delegate bool HasEventsMethod(UUID requestID, UUID pId);
public delegate Hashtable GetEventsMethod(UUID requestID, UUID pId, string request); public delegate Hashtable GetEventsMethod(UUID requestID, UUID pId);
public delegate Hashtable NoEventsMethod(UUID requestID, UUID pId); public delegate Hashtable NoEventsMethod(UUID requestID, UUID pId);
@ -47,13 +47,6 @@ namespace OpenSim.Framework.Servers.HttpServer
public UUID Id; public UUID Id;
public int TimeOutms; public int TimeOutms;
public EventType Type; public EventType Type;
// must be set true for cases where GetEvents needs to access the request body
// at each pool. http can start processing before having the full body
// but not sure if this is active for poll events
// if original coder thinked its needed i keep it
// if the Event has a Request method this seems to smoke for now
// seems for now nothing actually uses this so default to false
public bool GetEventsNeedsRequestBody = false;
public enum EventType : int public enum EventType : int
{ {

View File

@ -336,23 +336,7 @@ namespace OpenSim.Framework.Servers.HttpServer
{ {
if (req.PollServiceArgs.HasEvents(req.RequestID, req.PollServiceArgs.Id)) if (req.PollServiceArgs.HasEvents(req.RequestID, req.PollServiceArgs.Id))
{ {
string strreq = ""; Hashtable responsedata = req.PollServiceArgs.GetEvents(req.RequestID, req.PollServiceArgs.Id);
if (req.PollServiceArgs.GetEventsNeedsRequestBody)
{
try
{
// should we try to seek back? fear we can't
str = new StreamReader(req.Request.Body);
strreq = str.ReadToEnd();
str.Close();
}
catch
{
continue;
}
}
Hashtable responsedata = req.PollServiceArgs.GetEvents(req.RequestID, req.PollServiceArgs.Id, strreq);
if (responsedata == null) if (responsedata == null)
continue; continue;

View File

@ -419,7 +419,7 @@ namespace OpenSim.Region.ClientStack.Linden
} }
} }
public Hashtable GetEvents(UUID requestID, UUID pAgentId, string request) public Hashtable GetEvents(UUID requestID, UUID pAgentId)
{ {
if (DebugLevel >= 2) if (DebugLevel >= 2)
m_log.DebugFormat("POLLED FOR EQ MESSAGES BY {0} in {1}", pAgentId, m_scene.RegionInfo.RegionName); m_log.DebugFormat("POLLED FOR EQ MESSAGES BY {0} in {1}", pAgentId, m_scene.RegionInfo.RegionName);

View File

@ -160,7 +160,7 @@ namespace OpenSim.Region.ClientStack.Linden
lock (responses) lock (responses)
return responses.ContainsKey(x); return responses.ContainsKey(x);
}; };
GetEvents = (x, y, s) => GetEvents = (x, y) =>
{ {
lock (responses) lock (responses)
{ {

View File

@ -150,7 +150,7 @@ namespace OpenSim.Region.ClientStack.Linden
base(null, null, null, null, pId, int.MaxValue) base(null, null, null, null, pId, int.MaxValue)
{ {
HasEvents = (x, y) => { lock (responses) return responses.ContainsKey(x); }; HasEvents = (x, y) => { lock (responses) return responses.ContainsKey(x); };
GetEvents = (x, y, s) => GetEvents = (x, y) =>
{ {
lock (responses) lock (responses)
{ {

View File

@ -444,7 +444,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
} }
} }
} }
private Hashtable GetEvents(UUID requestID, UUID sessionID, string request) private Hashtable GetEvents(UUID requestID, UUID sessionID)
{ {
UrlData url = null; UrlData url = null;
RequestData requestData = null; RequestData requestData = null;