add gridservice GetOnlineRegions()

This commit is contained in:
UbitUmarov
2021-12-07 00:34:40 +00:00
parent 8b28668b28
commit 131455b107
9 changed files with 173 additions and 5 deletions

View File

@@ -86,6 +86,7 @@ namespace OpenSim.Data
List<RegionData> GetDefaultHypergridRegions(UUID scopeID);
List<RegionData> GetFallbackRegions(UUID scopeID);
List<RegionData> GetHyperlinks(UUID scopeID);
List<RegionData> GetOnlineRegions(UUID scopeID);
}
public class RegionDataDistanceCompare : IComparer<RegionData>

View File

@@ -402,6 +402,11 @@ namespace OpenSim.Data.MySQL
return Get((int)RegionFlags.Hyperlink, scopeID);
}
public List<RegionData> GetOnlineRegions(UUID scopeID)
{
return Get((int)RegionFlags.RegionOnline, scopeID);
}
private List<RegionData> Get(int regionFlags, UUID scopeID)
{
string command = "select * from `" + m_Realm + "` where (flags & " + regionFlags.ToString() + ") <> 0";

View File

@@ -273,6 +273,11 @@ namespace OpenSim.Data.Null
return Get((int)RegionFlags.Hyperlink, scopeID);
}
public List<RegionData> GetOnlineRegions(UUID scopeID)
{
return Get((int)RegionFlags.RegionOnline, scopeID);
}
private List<RegionData> Get(int regionFlags, UUID scopeID)
{
if (Instance != this)

View File

@@ -431,6 +431,11 @@ namespace OpenSim.Data.PGSQL
return Get((int)RegionFlags.Hyperlink, scopeID);
}
public List<RegionData> GetOnlineRegions(UUID scopeID)
{
return Get((int)RegionFlags.RegionOnline, scopeID);
}
private List<RegionData> Get(int regionFlags, UUID scopeID)
{
string sql = "SELECT * FROM " + m_Realm + " WHERE (\"flags\" & " + regionFlags.ToString() + ") <> 0";