Пример #1
0
        public ExpiryManager(IProviderRuntime providerRuntime)
        {
            ProviderRuntime = providerRuntime;
            Logger          = providerRuntime.GetLogger(this.GetType().FullName);

            DocumentExpiries = CouchbaseOrleansConfigurationExtensions.GetGrainExpiries();
            GetCalculators(ProviderRuntime.GrainFactory);
        }
        public void ReadOrleansConfigurationSectionTestWithIncorrectPath()
        {
            // Arrange
            var invalidConfigPath = "invalidPath";

            // Act
            var documentExpiryConfiguration = CouchbaseOrleansConfigurationExtensions.GetGrainExpiries(invalidConfigPath);

            // Assert
            Assert.Equal(0, documentExpiryConfiguration.Count);
        }
Пример #3
0
        public void ReadOrleansConfigurationSectionTest()
        {
            // Act
            var documentExpiryConfiguration = CouchbaseOrleansConfigurationExtensions.GetGrainExpiries();

            // Assert
            Assert.Equal(3, documentExpiryConfiguration.Count);
            Assert.Contains(documentExpiryConfiguration, pair => pair.Key == "grainX" && pair.Value == TimeSpan.FromMinutes(1));
            Assert.Contains(documentExpiryConfiguration, pair => pair.Key == "grainY" && pair.Value == TimeSpan.FromHours(1));
            Assert.Contains(documentExpiryConfiguration, pair => pair.Key == "grainZ" && pair.Value == TimeSpan.FromDays(1));
        }
Пример #4
0
        /// <summary>
        /// Initializes the provider during silo startup.
        /// </summary>
        /// <param name="name">The name of this provider instance.</param>
        /// <param name="providerRuntime">A Orleans runtime object managing all storage providers.</param>
        /// <param name="config">Configuration info for this provider instance.</param>
        /// <returns>Completion promise for this operation.</returns>
        public override Task Init(string name, IProviderRuntime providerRuntime, IProviderConfiguration config)
        {
            this.Name = name;

            string storageBucketName   = null;
            var    clientConfiguration = config.Properties.ReadCouchbaseConfiguration(out storageBucketName);

            var documentExpiries = CouchbaseOrleansConfigurationExtensions.GetGrainExpiries();

            DataManager = new CouchBaseDataManager(storageBucketName, clientConfiguration, documentExpiries);
            return(base.Init(name, providerRuntime, config));
        }