public GetNeighbours ( UUID scopeID, UUID regionID ) : List |
||
scopeID | UUID | |
regionID | UUID | |
return | List |
// private static readonly ILog m_log = // LogManager.GetLogger( // MethodBase.GetCurrentMethod().DeclaringType); public static void Main(string[] args) { ConsoleAppender consoleAppender = new ConsoleAppender(); consoleAppender.Layout = new PatternLayout("%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"); log4net.Config.BasicConfigurator.Configure(consoleAppender); string serverURI = "http://127.0.0.1:8001"; GridServicesConnector m_Connector = new GridServicesConnector(serverURI); GridRegion r1 = CreateRegion("Test Region 1", 1000, 1000); GridRegion r2 = CreateRegion("Test Region 2", 1001, 1000); GridRegion r3 = CreateRegion("Test Region 3", 1005, 1000); Console.WriteLine("[GRID CLIENT]: *** Registering region 1"); string msg = m_Connector.RegisterRegion(UUID.Zero, r1); if (msg == String.Empty) Console.WriteLine("[GRID CLIENT]: Successfully registered region 1"); else Console.WriteLine("[GRID CLIENT]: region 1 failed to register"); Console.WriteLine("[GRID CLIENT]: *** Registering region 2"); msg = m_Connector.RegisterRegion(UUID.Zero, r2); if (msg == String.Empty) Console.WriteLine("[GRID CLIENT]: Successfully registered region 2"); else Console.WriteLine("[GRID CLIENT]: region 2 failed to register"); Console.WriteLine("[GRID CLIENT]: *** Registering region 3"); msg = m_Connector.RegisterRegion(UUID.Zero, r3); if (msg == String.Empty) Console.WriteLine("[GRID CLIENT]: Successfully registered region 3"); else Console.WriteLine("[GRID CLIENT]: region 3 failed to register"); bool success; Console.WriteLine("[GRID CLIENT]: *** Deregistering region 3"); success = m_Connector.DeregisterRegion(r3.RegionID); if (success) Console.WriteLine("[GRID CLIENT]: Successfully deregistered region 3"); else Console.WriteLine("[GRID CLIENT]: region 3 failed to deregister"); Console.WriteLine("[GRID CLIENT]: *** Registering region 3 again"); msg = m_Connector.RegisterRegion(UUID.Zero, r3); if (msg == String.Empty) Console.WriteLine("[GRID CLIENT]: Successfully registered region 3"); else Console.WriteLine("[GRID CLIENT]: region 3 failed to register"); Console.WriteLine("[GRID CLIENT]: *** GetNeighbours of region 1"); List<GridRegion> regions = m_Connector.GetNeighbours(UUID.Zero, r1.RegionID); if (regions == null) Console.WriteLine("[GRID CLIENT]: GetNeighbours of region 1 failed"); else if (regions.Count > 0) { if (regions.Count != 1) Console.WriteLine("[GRID CLIENT]: GetNeighbours of region 1 returned more neighbours than expected: " + regions.Count); else Console.WriteLine("[GRID CLIENT]: GetNeighbours of region 1 returned the right neighbour " + regions[0].RegionName); } else Console.WriteLine("[GRID CLIENT]: GetNeighbours of region 1 returned 0 neighbours"); Console.WriteLine("[GRID CLIENT]: *** GetRegionByUUID of region 2 (this should succeed)"); GridRegion region = m_Connector.GetRegionByUUID(UUID.Zero, r2.RegionID); if (region == null) Console.WriteLine("[GRID CLIENT]: GetRegionByUUID returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionByUUID returned region " + region.RegionName); Console.WriteLine("[GRID CLIENT]: *** GetRegionByUUID of non-existent region (this should fail)"); region = m_Connector.GetRegionByUUID(UUID.Zero, UUID.Random()); if (region == null) Console.WriteLine("[GRID CLIENT]: GetRegionByUUID returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionByUUID returned region " + region.RegionName); Console.WriteLine("[GRID CLIENT]: *** GetRegionByName of region 3 (this should succeed)"); region = m_Connector.GetRegionByName(UUID.Zero, r3.RegionName); if (region == null) Console.WriteLine("[GRID CLIENT]: GetRegionByName returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionByName returned region " + region.RegionName); Console.WriteLine("[GRID CLIENT]: *** GetRegionByName of non-existent region (this should fail)"); region = m_Connector.GetRegionByName(UUID.Zero, "Foo"); if (region == null) Console.WriteLine("[GRID CLIENT]: GetRegionByName returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionByName returned region " + region.RegionName); Console.WriteLine("[GRID CLIENT]: *** GetRegionsByName (this should return 3 regions)"); regions = m_Connector.GetRegionsByName(UUID.Zero, "Test", 10); if (regions == null) Console.WriteLine("[GRID CLIENT]: GetRegionsByName returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionsByName returned " + regions.Count + " regions"); Console.WriteLine("[GRID CLIENT]: *** GetRegionRange (this should return 2 regions)"); regions = m_Connector.GetRegionRange(UUID.Zero, (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(1002), (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(1002) ); if (regions == null) Console.WriteLine("[GRID CLIENT]: GetRegionRange returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionRange returned " + regions.Count + " regions"); Console.WriteLine("[GRID CLIENT]: *** GetRegionRange (this should return 0 regions)"); regions = m_Connector.GetRegionRange(UUID.Zero, (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(950), (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(950) ); if (regions == null) Console.WriteLine("[GRID CLIENT]: GetRegionRange returned null"); else Console.WriteLine("[GRID CLIENT]: GetRegionRange returned " + regions.Count + " regions"); Console.Write("Proceed to deregister? Press enter..."); Console.ReadLine(); // Deregister them all Console.WriteLine("[GRID CLIENT]: *** Deregistering region 1"); success = m_Connector.DeregisterRegion(r1.RegionID); if (success) Console.WriteLine("[GRID CLIENT]: Successfully deregistered region 1"); else Console.WriteLine("[GRID CLIENT]: region 1 failed to deregister"); Console.WriteLine("[GRID CLIENT]: *** Deregistering region 2"); success = m_Connector.DeregisterRegion(r2.RegionID); if (success) Console.WriteLine("[GRID CLIENT]: Successfully deregistered region 2"); else Console.WriteLine("[GRID CLIENT]: region 2 failed to deregister"); Console.WriteLine("[GRID CLIENT]: *** Deregistering region 3"); success = m_Connector.DeregisterRegion(r3.RegionID); if (success) Console.WriteLine("[GRID CLIENT]: Successfully deregistered region 3"); else Console.WriteLine("[GRID CLIENT]: region 3 failed to deregister"); }
public void Grid_001() { GridServicesConnector m_Connector = new GridServicesConnector(DemonServer.Address); GridRegion r1 = CreateRegion("Test Region 1", 1000, 1000); GridRegion r2 = CreateRegion("Test Region 2", 1001, 1000); GridRegion r3 = CreateRegion("Test Region 3", 1005, 1000); string msg = m_Connector.RegisterRegion(UUID.Zero, r1); Assert.AreEqual(msg, string.Empty, "Region 1 failed to register"); msg = m_Connector.RegisterRegion(UUID.Zero, r2); Assert.AreEqual(msg, string.Empty, "Region 2 failed to register"); msg = m_Connector.RegisterRegion(UUID.Zero, r3); Assert.AreEqual(msg, string.Empty, "Region 3 failed to register"); bool success; success = m_Connector.DeregisterRegion(r3.RegionID); Assert.AreEqual(success, true, "Region 3 failed to deregister"); msg = m_Connector.RegisterRegion(UUID.Zero, r3); Assert.AreEqual(msg, string.Empty, "Region 3 failed to re-register"); List<GridRegion> regions = m_Connector.GetNeighbours(UUID.Zero, r1.RegionID); Assert.AreNotEqual(regions, null, "GetNeighbours of region 1 failed"); Assert.AreEqual(regions.Count, 1, "Region 1 should have 1 neighbor"); Assert.AreEqual(regions[0].RegionName, "Test Region 2", "Region 1 has the wrong neighbor"); GridRegion region = m_Connector.GetRegionByUUID(UUID.Zero, r2.RegionID); Assert.AreNotEqual(region, null, "GetRegionByUUID for region 2 failed"); Assert.AreEqual(region.RegionName, "Test Region 2", "GetRegionByUUID of region 2 returned wrong region"); region = m_Connector.GetRegionByUUID(UUID.Zero, UUID.Random()); Assert.AreEqual(region, null, "Region with randon id should not exist"); region = m_Connector.GetRegionByName(UUID.Zero, r3.RegionName); Assert.AreNotEqual(region, null, "GetRegionByUUID for region 3 failed"); Assert.AreEqual(region.RegionName, "Test Region 3", "GetRegionByUUID of region 3 returned wrong region"); region = m_Connector.GetRegionByName(UUID.Zero, "Foo"); Assert.AreEqual(region, null, "Region Foo should not exist"); regions = m_Connector.GetRegionsByName(UUID.Zero, "Test", 10); Assert.AreNotEqual(regions, null, "GetRegionsByName failed"); Assert.AreEqual(regions.Count, 3, "GetRegionsByName should return 3"); regions = m_Connector.GetRegionRange(UUID.Zero, (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(1002), (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(1002) ); Assert.AreNotEqual(regions, null, "GetRegionRange failed"); Assert.AreEqual(regions.Count, 2, "GetRegionRange should return 2"); regions = m_Connector.GetRegionRange(UUID.Zero, (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(950), (int)Util.RegionToWorldLoc(900), (int)Util.RegionToWorldLoc(950) ); Assert.AreNotEqual(regions, null, "GetRegionRange (bis) failed"); Assert.AreEqual(regions.Count, 0, "GetRegionRange (bis) should return 0"); // Deregister them all success = m_Connector.DeregisterRegion(r1.RegionID); Assert.AreEqual(success, true, "Region 1 failed to deregister"); success = m_Connector.DeregisterRegion(r2.RegionID); Assert.AreEqual(success, true, "Region 2 failed to deregister"); success = m_Connector.DeregisterRegion(r3.RegionID); Assert.AreEqual(success, true, "Region 3 failed to deregister"); }