diff options
author | Marck | 2010-08-06 07:46:19 +0200 |
---|---|---|
committer | Diva Canto | 2010-08-06 17:02:03 -0700 |
commit | 7e47ab746ef588648b8edbbc7cfb48c4d90c5e34 (patch) | |
tree | 0ba450dffb35724504634f88cc21b9c59a983130 /OpenSim/Services/Connectors | |
parent | Remove old test classes that don't actually test anything not done elsewhere (diff) | |
download | opensim-SC-7e47ab746ef588648b8edbbc7cfb48c4d90c5e34.zip opensim-SC-7e47ab746ef588648b8edbbc7cfb48c4d90c5e34.tar.gz opensim-SC-7e47ab746ef588648b8edbbc7cfb48c4d90c5e34.tar.bz2 opensim-SC-7e47ab746ef588648b8edbbc7cfb48c4d90c5e34.tar.xz |
Allow creation of link regions if there is an existing region within a 4096 range.
Also add GetHyperlinks() to the grid service.
Diffstat (limited to 'OpenSim/Services/Connectors')
-rw-r--r-- | OpenSim/Services/Connectors/Grid/GridServiceConnector.cs | 50 | ||||
-rw-r--r-- | OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs | 6 |
2 files changed, 56 insertions, 0 deletions
diff --git a/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs b/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs index 1831533..202bad7 100644 --- a/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs +++ b/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs | |||
@@ -556,6 +556,56 @@ namespace OpenSim.Services.Connectors | |||
556 | return rinfos; | 556 | return rinfos; |
557 | } | 557 | } |
558 | 558 | ||
559 | public List<GridRegion> GetHyperlinks(UUID scopeID) | ||
560 | { | ||
561 | Dictionary<string, object> sendData = new Dictionary<string, object>(); | ||
562 | |||
563 | sendData["SCOPEID"] = scopeID.ToString(); | ||
564 | |||
565 | sendData["METHOD"] = "get_hyperlinks"; | ||
566 | |||
567 | List<GridRegion> rinfos = new List<GridRegion>(); | ||
568 | string reply = string.Empty; | ||
569 | try | ||
570 | { | ||
571 | reply = SynchronousRestFormsRequester.MakeRequest("POST", | ||
572 | m_ServerURI + "/grid", | ||
573 | ServerUtils.BuildQueryString(sendData)); | ||
574 | |||
575 | //m_log.DebugFormat("[GRID CONNECTOR]: reply was {0}", reply); | ||
576 | } | ||
577 | catch (Exception e) | ||
578 | { | ||
579 | m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); | ||
580 | return rinfos; | ||
581 | } | ||
582 | |||
583 | if (reply != string.Empty) | ||
584 | { | ||
585 | Dictionary<string, object> replyData = ServerUtils.ParseXmlResponse(reply); | ||
586 | |||
587 | if (replyData != null) | ||
588 | { | ||
589 | Dictionary<string, object>.ValueCollection rinfosList = replyData.Values; | ||
590 | foreach (object r in rinfosList) | ||
591 | { | ||
592 | if (r is Dictionary<string, object>) | ||
593 | { | ||
594 | GridRegion rinfo = new GridRegion((Dictionary<string, object>)r); | ||
595 | rinfos.Add(rinfo); | ||
596 | } | ||
597 | } | ||
598 | } | ||
599 | else | ||
600 | m_log.DebugFormat("[GRID CONNECTOR]: GetHyperlinks {0} received null response", | ||
601 | scopeID); | ||
602 | } | ||
603 | else | ||
604 | m_log.DebugFormat("[GRID CONNECTOR]: GetHyperlinks received null reply"); | ||
605 | |||
606 | return rinfos; | ||
607 | } | ||
608 | |||
559 | public virtual int GetRegionFlags(UUID scopeID, UUID regionID) | 609 | public virtual int GetRegionFlags(UUID scopeID, UUID regionID) |
560 | { | 610 | { |
561 | Dictionary<string, object> sendData = new Dictionary<string, object>(); | 611 | Dictionary<string, object> sendData = new Dictionary<string, object>(); |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs index bea8172..7bc85c6 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs | |||
@@ -357,6 +357,12 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
357 | return new List<GridRegion>(0); | 357 | return new List<GridRegion>(0); |
358 | } | 358 | } |
359 | 359 | ||
360 | public List<GridRegion> GetHyperlinks(UUID scopeID) | ||
361 | { | ||
362 | // Hypergrid/linked regions are not supported | ||
363 | return new List<GridRegion>(); | ||
364 | } | ||
365 | |||
360 | public int GetRegionFlags(UUID scopeID, UUID regionID) | 366 | public int GetRegionFlags(UUID scopeID, UUID regionID) |
361 | { | 367 | { |
362 | const int REGION_ONLINE = 4; | 368 | const int REGION_ONLINE = 4; |