示例#1
0
 public static NuclearStorage CreateNuclear(this FileStorageConfig self, Action<DefaultAtomicStorageStrategyBuilder> config)
 {
     var strategyBuilder = new DefaultAtomicStorageStrategyBuilder();
     config(strategyBuilder);
     var strategy = strategyBuilder.Build();
     return CreateNuclear(self, strategy);
 }
示例#2
0
        /// <summary>
        /// Creates the simplified nuclear storage wrapper around Atomic storage.
        /// </summary>
        /// <param name="dictionary">The dictionary.</param>
        /// <param name="configStrategy">The config strategy.</param>
        /// <returns></returns>
        public static NuclearStorage CreateNuclear(this MemoryAccount dictionary,
            Action<DefaultAtomicStorageStrategyBuilder> configStrategy)
        {
            var strategyBuilder = new DefaultAtomicStorageStrategyBuilder();
            configStrategy(strategyBuilder);

            var strategy = strategyBuilder.Build();
            return CreateNuclear(dictionary, strategy);
        }
        public void SimpleWriteRoundtrip()
        {
            var strategy = new DefaultAtomicStorageStrategyBuilder().Build();
            var setup = Compose(strategy);

            setup.AddOrUpdateEntity(1, "test");
            setup.AddOrUpdateSingleton(() => 1, i => 1);

            AssertContents(setup);

            var mem = new MemoryStorageConfig().CreateNuclear(strategy);
            mem.CopyFrom(setup);

            AssertContents(mem);

            setup.Reset();

            setup.CopyFrom(mem);

            AssertContents(setup);
        }
示例#4
0
 /// <summary> Creates the simplified nuclear storage wrapper around Atomic storage. </summary>
 /// <param name="storageConfig">The storage config.</param>
 /// <param name="configStrategy">The config strategy.</param>
 /// <returns></returns>
 public static NuclearStorage CreateNuclear(this IAzureStorageConfig storageConfig,
     Action<DefaultAtomicStorageStrategyBuilder> configStrategy)
 {
     var strategyBuilder = new DefaultAtomicStorageStrategyBuilder();
     configStrategy(strategyBuilder);
     var strategy = strategyBuilder.Build();
     return CreateNuclear(storageConfig, strategy);
 }