C# 클래스 Nexus.Client.PluginManagement.PluginRegistry.TransactionEnlistment

Tracks the changes made to an PluginRegistry in the scope of a single Transaction. This also provides to mean to commit and rollback the tracked changes.
상속: IEnlistmentNotification
파일 보기 프로젝트 열기: NexusMods/NexusModManager-4.5

공개 메소드들

메소드 설명
Commit ( ) : void

Commits the changes to the ActivePluginLog.

Commit ( Enlistment p_eltEnlistment ) : void

Used to notify an enlisted resource manager that the transaction is being committed.

GetPlugin ( string p_strPluginPath ) : Plugin

Returns the plugin registered with the given path.

InDoubt ( Enlistment p_eltEnlistment ) : void

Used to notify an enlisted resource manager that the transaction is in doubt.

A transaction is in doubt if it has not received votes from all enlisted resource managers as to the state of the transaciton.

Prepare ( PreparingEnlistment p_entPreparingEnlistment ) : void

Used to notify an enlisted resource manager that the transaction is being prepared for commitment.

RegisterPlugin ( string p_strPluginPath ) : bool

Registers the specified plugin.

Rollback ( Enlistment p_eltEnlistment ) : void

Used to notify an enlisted resource manager that the transaction is being rolled back.

TransactionEnlistment ( Transaction p_txTransaction, PluginRegistry p_prgPluginRegistry ) : System

A simple constructor that initializes the object with the given values.

UnregisterPlugin ( Plugin p_plgPlugin ) : void

Removes the specified plugin from the registry.

비공개 메소드들

메소드 설명
Enlist ( ) : void

Enlists the install log into the current transaction.

메소드 상세

Commit() 공개 메소드

Commits the changes to the ActivePluginLog.
public Commit ( ) : void
리턴 void

Commit() 공개 메소드

Used to notify an enlisted resource manager that the transaction is being committed.
public Commit ( Enlistment p_eltEnlistment ) : void
p_eltEnlistment Nexus.Transactions.Enlistment The enlistment class used to communicate with the resource manager.
리턴 void

GetPlugin() 공개 메소드

Returns the plugin registered with the given path.
public GetPlugin ( string p_strPluginPath ) : Plugin
p_strPluginPath string The path of the plugin to return
리턴 Nexus.Client.Plugins.Plugin

InDoubt() 공개 메소드

Used to notify an enlisted resource manager that the transaction is in doubt.
A transaction is in doubt if it has not received votes from all enlisted resource managers as to the state of the transaciton.
public InDoubt ( Enlistment p_eltEnlistment ) : void
p_eltEnlistment Nexus.Transactions.Enlistment The enlistment class used to communicate with the resource manager.
리턴 void

Prepare() 공개 메소드

Used to notify an enlisted resource manager that the transaction is being prepared for commitment.
public Prepare ( PreparingEnlistment p_entPreparingEnlistment ) : void
p_entPreparingEnlistment Nexus.Transactions.PreparingEnlistment The enlistment class used to communicate with the resource manager.
리턴 void

RegisterPlugin() 공개 메소드

Registers the specified plugin.
public RegisterPlugin ( string p_strPluginPath ) : bool
p_strPluginPath string The path to the plugin to register.
리턴 bool

Rollback() 공개 메소드

Used to notify an enlisted resource manager that the transaction is being rolled back.
public Rollback ( Enlistment p_eltEnlistment ) : void
p_eltEnlistment Nexus.Transactions.Enlistment The enlistment class used to communicate with the resource manager.
리턴 void

TransactionEnlistment() 공개 메소드

A simple constructor that initializes the object with the given values.
public TransactionEnlistment ( Transaction p_txTransaction, PluginRegistry p_prgPluginRegistry ) : System
p_txTransaction Nexus.Transactions.Transaction The transaction into which we are enlisting.
p_prgPluginRegistry PluginRegistry The whose actions are being transacted.
리턴 System

UnregisterPlugin() 공개 메소드

Removes the specified plugin from the registry.
public UnregisterPlugin ( Plugin p_plgPlugin ) : void
p_plgPlugin Nexus.Client.Plugins.Plugin The plugin to unregister.
리턴 void