private void RemoveUrl(UrlData data) { MainServer.Instance.RemovePollServiceHTTPHandler("", "/lslhttp/" + data.urlcode.ToString() + "/"); }
public UUID RequestURL(IScriptModule engine, ISceneChildEntity host, UUID itemID) { UUID urlcode = UUID.Random(); lock (m_UrlMap) { if (m_UrlMap.Count >= m_TotalUrls) { engine.PostScriptEvent(itemID, host.UUID, "http_request", new Object[] {urlcode.ToString(), "URL_REQUEST_DENIED", ""}); return urlcode; } string url = MainServer.Instance.ServerURI + "/lslhttp/" + urlcode.ToString() + "/"; UrlData urlData = new UrlData { hostID = host.UUID, itemID = itemID, engine = engine, url = url, urlcode = urlcode, requests = new Dictionary<UUID, RequestData>() }; m_UrlMap[url] = urlData; string uri = "/lslhttp/" + urlcode.ToString() + "/"; MainServer.Instance.AddPollServiceHTTPHandler(uri, new PollServiceEventArgs(HttpRequestHandler, HasEvents, GetEvents, NoEvents, urlcode)); engine.PostScriptEvent(itemID, host.UUID, "http_request", new Object[] {urlcode.ToString(), "URL_REQUEST_GRANTED", url}); } return urlcode; }