public virtual bool TriggerRegionUp(RegionInfo region)
 {
     handlerRegionUp = OnRegionUp;
     if (handlerRegionUp != null)
     {
         handlerRegionUp(region);
         return(true);
     }
     return(false);
 }
 protected bool newRegionUp(RegionInfo region)
 {
     handlerRegionUp = OnRegionUp;
     if (handlerRegionUp != null)
     {
         //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: newRegionUp Fired for User:" + region.RegionName);
         handlerRegionUp(region);
     }
     return(true);
 }
예제 #3
0
 public void TriggerOnRegionUp(GridRegion otherRegion)
 {
     handlerOnRegionUp = OnRegionUp;
     if (handlerOnRegionUp != null)
         handlerOnRegionUp(otherRegion);
 }
예제 #4
0
 protected bool newRegionUp(RegionInfo region)
 {
     handlerRegionUp = OnRegionUp;
     if (handlerRegionUp != null)
     {
         //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: newRegionUp Fired for User:" + region.RegionName);
         handlerRegionUp(region);
     }
     return true;
 }
        /// <summary>
        /// Asynchronous call to information neighbouring regions that this region is up
        /// </summary>
        /// <param name="region"></param>
        /// <param name="regionhandle"></param>
        private void InformNeighboursThatRegionIsUpAsync(INeighbourService neighbourService, RegionInfo region, ulong regionhandle)
        {
            m_log.Info("[INTERGRID]: Starting to inform neighbors that I'm here");
            //RegionUpData regiondata = new RegionUpData(region.RegionLocX, region.RegionLocY, region.ExternalHostName, region.InternalEndPoint.Port);

            //bool regionAccepted =
            //    m_commsProvider.InterRegion.RegionUp(new SerializableRegionInfo(region), regionhandle);

            //bool regionAccepted = m_interregionCommsOut.SendHelloNeighbour(regionhandle, region);
            bool regionAccepted = false;
            if (neighbourService != null)
                regionAccepted = neighbourService.HelloNeighbour(regionhandle, region);
            else
                m_log.DebugFormat("[SCS]: No neighbour service provided for informing neigbhours of this region");

            if (regionAccepted)
            {
                m_log.Info("[INTERGRID]: Completed informing neighbors that I'm here");
                handlerRegionUp = OnRegionUp;

                // yes, we're notifying ourselves.
                if (handlerRegionUp != null)
                    handlerRegionUp(region);
            }
            else
            {
                m_log.Warn("[INTERGRID]: Failed to inform neighbors that I'm here.");
            }
        }
예제 #6
0
 public virtual bool TriggerRegionUp(RegionInfo region)
 {
     handlerRegionUp = OnRegionUp;
     if (handlerRegionUp != null)
     {
         handlerRegionUp(region);
         return true;
     }
     return false;
 }