pub struct ImmutableDeployment {
pub config: ImmutableConfig,
pub system_config: LockableConfig,
}Expand description
Immutable deployment manager
Fields§
§config: ImmutableConfigImmutable configuration
system_config: LockableConfigSystem configuration that can be locked
Implementations§
Source§impl ImmutableDeployment
impl ImmutableDeployment
Sourcepub fn with_config(system_config: LockableConfig) -> Result<Self>
pub fn with_config(system_config: LockableConfig) -> Result<Self>
Create with custom configuration
Sourcepub fn enable_immutable_mode(&mut self) -> Result<()>
pub fn enable_immutable_mode(&mut self) -> Result<()>
Enable immutable mode
Sourcepub fn lock_system(
&mut self,
keypair: &MlDsaKeyPair,
current_time: Timestamp,
) -> Result<()>
pub fn lock_system( &mut self, keypair: &MlDsaKeyPair, current_time: Timestamp, ) -> Result<()>
Lock the system with quantum-resistant signature
Sourcepub fn verify_lock_signature(&self, current_time: Timestamp) -> Result<bool>
pub fn verify_lock_signature(&self, current_time: Timestamp) -> Result<bool>
Verify the lock signature
Sourcepub fn can_modify_config(&self, current_time: Timestamp) -> bool
pub fn can_modify_config(&self, current_time: Timestamp) -> bool
Check if configuration changes are allowed
Sourcepub fn update_fee_params(
&mut self,
params: FeeModelParams,
current_time: Timestamp,
) -> Result<()>
pub fn update_fee_params( &mut self, params: FeeModelParams, current_time: Timestamp, ) -> Result<()>
Update fee parameters (only allowed if not locked)
Sourcepub fn update_system_config(
&mut self,
config: LockableConfig,
current_time: Timestamp,
) -> Result<()>
pub fn update_system_config( &mut self, config: LockableConfig, current_time: Timestamp, ) -> Result<()>
Update system configuration (only allowed if not locked)
Sourcepub fn get_status(&self, current_time: Timestamp) -> ImmutableStatus
pub fn get_status(&self, current_time: Timestamp) -> ImmutableStatus
Get system status for display
Sourcepub fn governance_override(
&mut self,
governance_keypair: &MlDsaKeyPair,
current_time: Timestamp,
) -> Result<()>
pub fn governance_override( &mut self, governance_keypair: &MlDsaKeyPair, current_time: Timestamp, ) -> Result<()>
Emergency governance override (only with governance key)
Trait Implementations§
Source§impl Clone for ImmutableDeployment
impl Clone for ImmutableDeployment
Source§fn clone(&self) -> ImmutableDeployment
fn clone(&self) -> ImmutableDeployment
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ImmutableDeployment
impl Debug for ImmutableDeployment
Source§impl Default for ImmutableDeployment
impl Default for ImmutableDeployment
Source§impl<'de> Deserialize<'de> for ImmutableDeployment
impl<'de> Deserialize<'de> for ImmutableDeployment
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ImmutableDeployment
impl RefUnwindSafe for ImmutableDeployment
impl Send for ImmutableDeployment
impl Sync for ImmutableDeployment
impl Unpin for ImmutableDeployment
impl UnwindSafe for ImmutableDeployment
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more