Пример #1
0
        public OrleansPubSub(IGrainFactory grainFactory, ILocalSiloDetails localSiloDetails, ILogger <OrleansPubSub> logger)
        {
            brokerGrain = grainFactory.GetGrain <IPubSubBrokerGrain>(Constants.BrokerId);

            hostGrain = grainFactory.GetGrain <IPubSubHostGrain>(localSiloDetails.SiloAddress.ToParsableString());

            this.logger = logger;
        }
Пример #2
0
        public override Task OnActivateAsync()
        {
            id = this.GetPrimaryKeyString();

            broker = GrainFactory.GetGrain <IPubSubBrokerGrain>(Constants.BrokerId);

            RegisterTimer(x => ReportIamAliveAsync(), null, TimeSpan.Zero, Constants.ReportAlivePeriod);

            DelayDeactivation(TimeSpan.FromDays(100000));

            return(base.OnActivateAsync());
        }