static IPersistence Connect() { var options = new InMemoryPersistenceOptions { NetworkSimulator = new ReliableNetworkSimulator(10, 50) }; return(new InMemoryPersistence(options)); }
protected IPersistence Create(bool dropOnInit) { var options = new InMemoryPersistenceOptions { CloneFunc = Clone, }; return(new InMemoryPersistence(options)); }
protected IPersistence CreatePersistence() { networkSimulator = new AlwaysThrowsNetworkSimulator(); var options = new InMemoryPersistenceOptions { NetworkSimulator = networkSimulator }; var persistence = new InMemoryPersistence(options); return(persistence); }
static IPersistence BuildStore(string store) { Console.WriteLine($"Selected store is {store}"); switch (store.ToLowerInvariant()) { case "memory": { var network = new ReliableNetworkSimulator(2, 10); var options = new InMemoryPersistenceOptions { CloneFunc = ObjectSerializer.Clone, NetworkSimulator = network }; return(new InMemoryPersistence(options)); } case "mongo": { var options = new MongoPersistenceOptions { PartitionsConnectionString = Mongo, UseLocalSequence = true, PartitionsCollectionName = "partitions", SequenceCollectionName = "seq", DropOnInit = true, MongoPayloadSerializer = new DiagnosticSerializerWrapper(new MongoCustomMongoPayloadSerializer()), CustomizePartitionSettings = settings => { settings.MaxConnectionPoolSize = 5000; } }; var mongo = new MongoPersistence(options); mongo.InitAsync(CancellationToken.None).GetAwaiter().GetResult(); return(mongo); } } throw new Exception($"Invalid store {store}"); }