Beispiel #1
0
            public void Process(aPollRequest requestinfo)
            {
                Hashtable response;

                UUID requestID = requestinfo.reqID;

                if (m_scene.ShuttingDown)
                {
                    return;
                }

                // If the avatar is gone, don't bother to get the texture
                if (m_scene.GetScenePresence(Id) == null)
                {
                    response = new Hashtable();

                    response["int_response_code"]   = 500;
                    response["str_response_string"] = "Script timeout";
                    response["content_type"]        = "text/plain";
                    response["keepalive"]           = false;
                    response["reusecontext"]        = false;

                    lock (responses)
                        responses[requestID] = new aPollResponse()
                        {
                            bytes = 0, response = response, lod = 0
                        };

                    return;
                }

                response = m_getMeshHandler.Handle(requestinfo.request);
                lock (responses)
                {
                    responses[requestID] = new aPollResponse()
                    {
                        bytes    = (int)response["int_bytes"],
                        lod      = (int)response["int_lod"],
                        response = response
                    };
                }
                m_throttler.PassTime();
            }
Beispiel #2
0
            public void Process(aPollRequest requestinfo)
            {
                Hashtable response;

                UUID requestID = requestinfo.reqID;

                // If the avatar is gone, don't bother to get the texture
                if (m_scene.GetScenePresence(Id) == null)
                {
                    response = new Hashtable();

                    response["int_response_code"] = 500;
                    response["str_response_string"] = "Script timeout";
                    response["content_type"] = "text/plain";
                    response["keepalive"] = false;
                    response["reusecontext"] = false;

                    lock (responses)
                        responses[requestID] = new aPollResponse() { bytes = 0, response = response, lod = 0 };

                    return;
                }

                response = m_getMeshHandler.Handle(requestinfo.request);
                lock (responses)
                {
                    responses[requestID] = new aPollResponse()
                    {
                        bytes = (int)response["int_bytes"],
                        lod = (int)response["int_lod"],
                        response = response
                    };

                }
                m_throttler.ProcessTime();
            }
            public void Process(aPollRequest requestinfo)
            {
                Hashtable response;

                UUID requestID = requestinfo.reqID;

                if(m_scene.ShuttingDown)
                    return;

                if (requestinfo.send503)
                {
                    response = new Hashtable();

                    response["int_response_code"] = 503;
                    response["str_response_string"] = "Throttled";
                    response["content_type"] = "text/plain";
                    response["keepalive"] = false;
                    response["reusecontext"] = false;

                    Hashtable headers = new Hashtable();
                    headers["Retry-After"] = 30;
                    response["headers"] = headers;
                    
                    lock (responses)
                        responses[requestID] = new aPollResponse() {bytes = 0, response = response};

                    return;
                }

                // If the avatar is gone, don't bother to get the texture
                if (m_scene.GetScenePresence(Id) == null)
                {
                    response = new Hashtable();

                    response["int_response_code"] = 500;
                    response["str_response_string"] = "Script timeout";
                    response["content_type"] = "text/plain";
                    response["keepalive"] = false;
                    response["reusecontext"] = false;
                    
                    lock (responses)
                        responses[requestID] = new aPollResponse() {bytes = 0, response = response};

                    return;
                }
                
                response = m_getTextureHandler.Handle(requestinfo.request);
                lock (responses)
                {
                    responses[requestID] = new aPollResponse()
                                               {
                                                   bytes = (int) response["int_bytes"],
                                                   response = response
                                               };
                   
                } 
                m_throttler.ProcessTime();
            }
Beispiel #4
0
            public void Process(aPollRequest requestinfo)
            {
                Hashtable response;

                UUID requestID = requestinfo.reqID;

                if (requestinfo.send503)
                {
                    response = new Hashtable();


                    response["int_response_code"]   = 503;
                    response["str_response_string"] = "Throttled";
                    response["content_type"]        = "text/plain";
                    response["keepalive"]           = false;
                    response["reusecontext"]        = false;

                    Hashtable headers = new Hashtable();
                    headers["Retry-After"] = 30;
                    response["headers"]    = headers;

                    lock (responses)
                        responses[requestID] = new aPollResponse()
                        {
                            bytes = 0, response = response
                        };

                    return;
                }

                // If the avatar is gone, don't bother to get the texture
                if (m_scene.GetScenePresence(Id) == null)
                {
                    response = new Hashtable();

                    response["int_response_code"]   = 500;
                    response["str_response_string"] = "Script timeout";
                    response["content_type"]        = "text/plain";
                    response["keepalive"]           = false;
                    response["reusecontext"]        = false;

                    lock (responses)
                        responses[requestID] = new aPollResponse()
                        {
                            bytes = 0, response = response
                        };

                    return;
                }

                response = m_getTextureHandler.Handle(requestinfo.request);
                lock (responses)
                {
                    responses[requestID] = new aPollResponse()
                    {
                        bytes    = (int)response["int_bytes"],
                        response = response
                    };
                }
                m_throttler.ProcessTime();
            }