Class PrepareNetworkUpgradeExtensions
Extension methods for preparing a network upgrade.
Inherited Members
Namespace: Hiero
Assembly: Hiero.dll
Syntax
public static class PrepareNetworkUpgradeExtensions
Methods
| Edit this page View SourcePrepareNetworkUpgradeAsync(ConsensusClient, PrepareNetworkUpgradeParams, Action<IConsensusContext>?)
Prepares the network for an upgrade as configured by the specified upgrade file. The file hash must match the hash of the identified upgrade file stored at the specified location. This operation does not immediately affect network operations.
Declaration
public static Task<TransactionReceipt> PrepareNetworkUpgradeAsync(this ConsensusClient client, PrepareNetworkUpgradeParams prepareParams, Action<IConsensusContext>? configure = null)
Parameters
| Type | Name | Description |
|---|---|---|
| ConsensusClient | client | The Consensus Node Client orchestrating the administrative command. |
| PrepareNetworkUpgradeParams | prepareParams | The parameters for preparing the network upgrade. |
| Action<IConsensusContext> | configure | Optional callback method providing an opportunity to modify the execution configuration for just this method call. It is executed prior to submitting the request to the network. |
Returns
| Type | Description |
|---|---|
| Task<TransactionReceipt> | A TransactionId Receipt indicating success. |
Remarks
This operation must be submitted by a privileged account having access rights to perform this operation.
Examples
// Stage a network upgrade: nodes will validate the file's contents
// against `FileHash` before accepting the subsequent schedule step.
// Requires the superuser payer (typically 0.0.50 or 0.0.55).
var receipt = await client.PrepareNetworkUpgradeAsync(new PrepareNetworkUpgradeParams
{
File = upgradeFile,
FileHash = expectedHash
});
Console.WriteLine($"Prepare status: {receipt.Status}");
Exceptions
| Type | Condition |
|---|---|
| ArgumentOutOfRangeException | If required arguments are missing. |
| InvalidOperationException | If required context configuration is missing. |
| PrecheckException | If the gateway node rejected the request upon submission. |
| ConsensusException | If the network was unable to come to consensus before the duration of the transaction expired. |
| TransactionException | If the network rejected the request as invalid or had missing data. |