Beispiel #1
0
 public GlobalSingleInstanceActivationMaintainer(
     LocalGrainDirectory router,
     ILogger logger,
     IInternalGrainFactory grainFactory,
     IMultiClusterOracle multiClusterOracle,
     ExecutorService executorService,
     ILocalSiloDetails siloDetails,
     IOptions <MultiClusterOptions> multiClusterOptions,
     ILoggerFactory loggerFactory,
     RegistrarManager registrarManager)
     : base(executorService, loggerFactory)
 {
     this.router              = router;
     this.logger              = logger;
     this.grainFactory        = grainFactory;
     this.multiClusterOracle  = multiClusterOracle;
     this.siloDetails         = siloDetails;
     this.multiClusterOptions = multiClusterOptions.Value;
     this.period              = multiClusterOptions.Value.GlobalSingleInstanceRetryInterval;
     this.registrarManager    = registrarManager;
     multiClusterOracle.SubscribeToMultiClusterConfigurationEvents(this);
     logger.Debug("GSIP:M GlobalSingleInstanceActivationMaintainer Started, Period = {0}", period);
 }
Beispiel #2
0
 public static void InitializeGrainDirectoryManager(LocalGrainDirectory router, int numRetriesForGSI)
 {
     Instance = new RegistrarManager();
     Instance.Register<ClusterLocalRegistration>(new ClusterLocalRegistrar(router.DirectoryPartition));
     Instance.Register<GlobalSingleInstanceRegistration>(new GlobalSingleInstanceRegistrar(router.DirectoryPartition, router.Logger, router.GsiActivationMaintainer, numRetriesForGSI));
 }
Beispiel #3
0
 public static void InitializeGrainDirectoryManager(LocalGrainDirectory router)
 {
     Instance = new RegistrarManager();
     Instance.Register <ClusterLocalRegistration>(new ClusterLocalRegistrar(router.DirectoryPartition));
 }