/// <summary> /// Initializes a new instance of the <see cref="PersistedDataFactory"/> class. /// </summary> /// <param name="stateManager">The <see cref="IReliableStateManager"/> associated with this instance</param> /// <param name="name">Name of this instance</param> /// <param name="configuration">Configuration settings</param> /// <param name="instrumentation">Instrumentation consumer</param> /// <param name="cancellationToken">Cancellation token</param> public PersistedDataFactory( IReliableStateManager stateManager, string name, Configuration configuration, IServiceFabricPersistenceInstrumentation instrumentation, CancellationToken cancellationToken) : this(stateManager, name, configuration, DefaultReplicationQueueSize, DefaultReplicationGroupDataSize, instrumentation, cancellationToken) { }
/// <summary> /// Initializes a new instance of the <see cref="PersistedDataFactory"/> class. /// </summary> /// <param name="stateManager">The <see cref="IReliableStateManager"/> associated with this instance</param> /// <param name="name">Name of this instance</param> /// <param name="configuration">Configuration settings</param> /// <param name="replicationQueueSize">Size of replication queue in the base class</param> /// <param name="maxReplicationDataSize">Size of replication data group</param> /// <param name="instrumentation">Instrumentation consumer</param> /// <param name="cancellationToken">Cancellation token</param> public PersistedDataFactory( IReliableStateManager stateManager, string name, Configuration configuration, int replicationQueueSize, int maxReplicationDataSize, IServiceFabricPersistenceInstrumentation instrumentation, CancellationToken cancellationToken) : base(name, instrumentation, cancellationToken, replicationQueueSize, maxReplicationDataSize, configuration.FixStatDuringLoad) { this.stateManager = stateManager ?? throw new ArgumentNullException(nameof(stateManager)); this.configuration = configuration ?? new Configuration(); this.instrumentation = instrumentation; this.cancellationToken = cancellationToken; if (this.configuration.EnableActiveSecondary) { this.stateManager.TransactionChanged += this.OnStateManagerTransactionChangedHandler; this.stateManager.StateManagerChanged += this.OnStateManagerChangedHandler; } ServiceFabricPersistenceEventSource.Log.PersistedDataFactory(name, this.configuration.EnableActiveSecondary); }