public byte[] AddRegion(OSDMap request, UUID regionID) { OSDArray requests = (OSDArray)request["Requests"]; List <LandData> parcels = new List <LandData>(); foreach (OSD o in requests) { LandData land = new LandData(); land.FromOSD((OSDMap)o); land.RegionID = regionID; parcels.Add(land); } if (parcels.Count == 0) { return(new byte[1]); } //Check whether this region is just spamming add to search and stop them if they are if (timeBeforeNextUpdate.ContainsKey(parcels[0].RegionID) && Util.UnixTimeSinceEpoch() < timeBeforeNextUpdate[parcels[0].RegionID]) { return(new byte[1]); //Too soon to update } //Update the time with now + the time to wait for the next update timeBeforeNextUpdate[parcels[0].RegionID] = Util.UnixTimeSinceEpoch() + (60 * minTimeBeforeNextParcelUpdate); DirectoryServiceConnector.AddRegion(parcels); return(new byte[1]); }