private byte[] GetSafeRegions(Dictionary <string, object> request) { //m_log.DebugFormat("[GRID HANDLER]: GetRegionRange"); UUID scopeID = UUID.Zero; if (request.ContainsKey("SCOPEID")) { UUID.TryParse(request["SCOPEID"].ToString(), out scopeID); } else { m_log.WarnFormat("[GRID HANDLER]: no scopeID in request to get fallback regions"); } int x = 0, y = 0; if (request.ContainsKey("X")) { Int32.TryParse(request["X"].ToString(), out x); } else { m_log.WarnFormat("[GRID HANDLER]: no X in request to get fallback regions"); } if (request.ContainsKey("Y")) { Int32.TryParse(request["Y"].ToString(), out y); } else { m_log.WarnFormat("[GRID HANDLER]: no Y in request to get fallback regions"); } List <GridRegion> rinfos = m_GridService.GetSafeRegions(scopeID, x, y); rinfos = CleanRegions(rinfos); Dictionary <string, object> result = new Dictionary <string, object>(); if ((rinfos == null) || ((rinfos != null) && (rinfos.Count == 0))) { result["result"] = "null"; } else { int i = 0; foreach (GridRegion rinfo in rinfos) { Dictionary <string, object> rinfoDict = rinfo.ToKeyValuePairs(); result["region" + i] = rinfoDict; i++; } } string xmlString = WebUtils.BuildXmlResponse(result); //m_log.DebugFormat("[GRID HANDLER]: resp string: {0}", xmlString); UTF8Encoding encoding = new UTF8Encoding(); return(encoding.GetBytes(xmlString)); }
private GridRegion FindDefaultRegion() { GridRegion region = null; if (m_defaultRegion != "")//This overrides all { region = m_GridService.GetRegionByName(null, m_defaultRegion); if (region != null) { m_foundDefaultRegion = true; return(region); } } List <GridRegion> defs = m_GridService.GetDefaultRegions(null); if (defs != null && defs.Count > 0) { region = FindRegion(defs); } if (region == null) { defs = m_GridService.GetFallbackRegions(null, 0, 0); if (defs != null && defs.Count > 0) { region = FindRegion(defs); } if (region == null) { defs = m_GridService.GetSafeRegions(null, 0, 0); if (defs != null && defs.Count > 0) { region = FindRegion(defs); } if (region == null) { MainConsole.Instance.WarnFormat("[GATEKEEPER SERVICE]: Please specify a default region for this grid!"); } } } if (region != null) { m_foundDefaultRegion = true; } return(region); }
public List <GridRegion> GetSafeRegions(UUID scopeID, int x, int y) { return(m_localService.GetSafeRegions(scopeID, x, y)); }