protected List <GridRegion> ParseQuery(List <UUID> scopeIDs, List <string> query) { List <GridRegion> regionData = new List <GridRegion>(); if ((query.Count % 14) == 0) { for (int i = 0; i < query.Count; i += 14) { GridRegion data = new GridRegion(); OSDMap map = (OSDMap)OSDParser.DeserializeJson(query[i + 13]); map["owner_uuid"] = (!map.ContainsKey("owner_uuid") || map["owner_uuid"].AsUUID() == UUID.Zero) ? OSD.FromUUID(UUID.Parse(query[i + 6])) : map["owner_uuid"]; map["EstateOwner"] = (!map.ContainsKey("EstateOwner") || map["EstateOwner"].AsUUID() == UUID.Zero) ? OSD.FromUUID(UUID.Parse(query[i + 6])) : map["EstateOwner"]; data.FromOSD(map); //Check whether it should be down if (data.LastSeen > (Util.UnixTimeSinceEpoch() + (1000 * 6))) { data.Access |= (int)SimAccess.Down; } if (!regionData.Contains(data)) { regionData.Add(data); } } } return(AllScopeIDImpl.CheckScopeIDs(scopeIDs, regionData)); }
protected List <GridRegion> ParseQuery(List <string> query) { List <GridRegion> regionData = new List <GridRegion>(); if ((query.Count % 14) == 0) { for (int i = 0; i < query.Count; i += 14) { GridRegion data = new GridRegion(); OSDMap map = (OSDMap)OSDParser.DeserializeJson(query[i + 13]); data.FromOSD(map); //Check whether it should be down if (data.LastSeen > (Util.UnixTimeSinceEpoch() + (1000 * 6))) { data.Access |= (int)SimAccess.Down; } if (!regionData.Contains(data)) { regionData.Add(data); } } } return(regionData); }