# Class MultiServerRestorer OptimaJet.Workflow.Core.Runtime.ServiceRunners.MultiServerRestorer Provides multi-server process restoring behavior by delegating restore execution to [RestorerBase](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/RestorerBase/). Namespace: [OptimaJet.Workflow.Core.Runtime.ServiceRunners](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/) ```csharp public class MultiServerRestorer : RestorerBase ``` ## Type Hierarchy - [RestorerBase](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/RestorerBase/) - MultiServerRestorer Current type ## Constructors `public MultiServerRestorer(WorkflowRuntime runtimeOwner, CancellationToken token)` Initializes a new instance of the [MultiServerRestorer](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/MultiServerRestorer/) class. ### Parameters | Name | Type | Description | | --- | --- | --- | | `runtimeOwner` | `WorkflowRuntime` | Runtime owner whose process data and restorers are used during restore execution. | | `token` | `CancellationToken` | Token that is observed when the returned restore action starts. | ## Methods `public Func GetRestorerAsyncAction(Guid processId, string runtimeId, bool isSelfRestore, Guid runtimeLock)` Creates an asynchronous restore action for a single process in a multi-server runtime. ### Parameters | Name | Type | Description | | --- | --- | --- | | `processId` | `Guid` | Identifier of the process instance to restore. | | `runtimeId` | `String` | Identifier of the runtime currently participating in restore coordination. | | `isSelfRestore` | `Boolean` | [true](https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/bool) when the runtime being restored is the current runtime instance; [false](https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/bool) when restoring on behalf of another runtime. | | `runtimeLock` | `Guid` | Expected lock value used to detect stale runtime ownership. | ### Returns | Type | Description | | --- | --- | | `Func` | A delegate that performs the restore action when invoked. | ### Remarks The returned delegate executes restore logic from [RestorerBase](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/RestorerBase/) and validates the runtime lock for multi-server coordination before applying decisions. [Previous IWorkflowServiceRunner](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/IWorkflowServiceRunner/) [Next MultiServerServiceRunner](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime.ServiceRunners/MultiServerServiceRunner/)