Aurora.Addon.HyperGrid.GatekeeperService.LinkRegion C# (CSharp) Method

LinkRegion() public method

public LinkRegion ( string regionName, UUID &regionID, ulong &regionHandle, string &externalName, string &imageURL, string &reason ) : bool
regionName string
regionID UUID
regionHandle ulong
externalName string
imageURL string
reason string
return bool
        public bool LinkRegion(string regionName, out UUID regionID, out ulong regionHandle, out string externalName, out string imageURL, out string reason)
        {
            regionID = UUID.Zero;
            regionHandle = 0;
            externalName = m_ExternalName + ((regionName != string.Empty) ? " " + regionName : "");
            imageURL = string.Empty;
            reason = string.Empty;
            GridRegion region = null;

            MainConsole.Instance.DebugFormat ("[GATEKEEPER SERVICE]: Request to link to {0}", (regionName == string.Empty) ? "default region" : regionName);
            if (!m_AllowTeleportsToAnyRegion || regionName == string.Empty)
            {
                if(!m_foundDefaultRegion)
                    m_DefaultGatewayRegion = FindDefaultRegion();
                if (m_DefaultGatewayRegion != null)
                    region = m_DefaultGatewayRegion;
                else
                {
                    reason = "Grid setup problem. Try specifying a particular region here.";
                    return false;
                }
            }
            else
            {
                region = m_GridService.GetRegionByName(null, regionName);
                if (region == null)
                {
                    if(!m_foundDefaultRegion)
                        m_DefaultGatewayRegion = FindDefaultRegion();
                    if (m_DefaultGatewayRegion != null)
                        region = m_DefaultGatewayRegion;
                    if (region == null)
                    {
                        reason = "Region not found";
                        return false;
                    }
                }
            }

            regionID = region.RegionID;
            regionHandle = region.RegionHandle;

            string regionimage = "regionImage" + regionID.ToString ();
            regionimage = regionimage.Replace ("-", "");
            imageURL = region.ServerURI + "/" + "index.php?method=" + regionimage;

            return true;
        }