Merge branch 'pallet-networks' into pallet-combined
Signed-off-by: Uncle Stretch <uncle.stretch@ghostchain.io>
This commit is contained in:
commit
5380ac0b36
@ -878,23 +878,25 @@ impl<T: Config> NetworkDataMutateHandler<NetworkData, BalanceOf<T>> for Pallet<T
|
||||
.map(|network| network.incoming_share)
|
||||
.ok_or(())?;
|
||||
|
||||
GatekeeperAmounts::<T>::try_mutate(network_id, |gatekeeper_amount| -> Result<(), ()> {
|
||||
*gatekeeper_amount = gatekeeper_amount.checked_add(&amount).ok_or(())?;
|
||||
Ok(())
|
||||
})?;
|
||||
let increased_gatekeeper_amount = GatekeeperAmounts::<T>::get(network_id)
|
||||
.checked_add(&amount)
|
||||
.ok_or(())?;
|
||||
|
||||
let curve_share = Perbill::from_parts(incoming_share).mul_ceil(amount);
|
||||
let final_amount = amount.saturating_sub(curve_share);
|
||||
|
||||
NetworkImbalance::<T>::try_mutate(|imbalance_state| -> Result<(), ()> {
|
||||
let mut imbalance_state = NetworkImbalance::<T>::get();
|
||||
|
||||
imbalance_state.incoming = imbalance_state.incoming
|
||||
.checked_add(&final_amount)
|
||||
.ok_or(())?;
|
||||
|
||||
imbalance_state.curve_share = imbalance_state.curve_share
|
||||
.checked_add(&curve_share)
|
||||
.ok_or(())?;
|
||||
Ok(())
|
||||
})?;
|
||||
|
||||
GatekeeperAmounts::<T>::insert(network_id, increased_gatekeeper_amount);
|
||||
NetworkImbalance::<T>::put(imbalance_state);
|
||||
|
||||
Ok(final_amount)
|
||||
}
|
||||
@ -907,23 +909,25 @@ impl<T: Config> NetworkDataMutateHandler<NetworkData, BalanceOf<T>> for Pallet<T
|
||||
.map(|network| network.outgoing_share)
|
||||
.ok_or(())?;
|
||||
|
||||
GatekeeperAmounts::<T>::try_mutate(network_id, |gatekeeper_amount| -> Result<(), ()> {
|
||||
*gatekeeper_amount = gatekeeper_amount.checked_sub(&amount).ok_or(())?;
|
||||
Ok(())
|
||||
})?;
|
||||
let decreased_gatekeeper_amount = GatekeeperAmounts::<T>::get(network_id)
|
||||
.checked_sub(&amount)
|
||||
.ok_or(())?;
|
||||
|
||||
let curve_share = Perbill::from_parts(outgoing_share).mul_ceil(amount);
|
||||
let final_amount = amount.saturating_sub(curve_share);
|
||||
|
||||
NetworkImbalance::<T>::try_mutate(|imbalance_state| -> Result<(), ()> {
|
||||
let mut imbalance_state = NetworkImbalance::<T>::get();
|
||||
|
||||
imbalance_state.outgoing = imbalance_state.outgoing
|
||||
.checked_add(&final_amount)
|
||||
.ok_or(())?;
|
||||
|
||||
imbalance_state.curve_share = imbalance_state.curve_share
|
||||
.checked_add(&curve_share)
|
||||
.ok_or(())?;
|
||||
Ok(())
|
||||
})?;
|
||||
|
||||
GatekeeperAmounts::<T>::insert(network_id, decreased_gatekeeper_amount);
|
||||
NetworkImbalance::<T>::put(imbalance_state);
|
||||
|
||||
Ok(final_amount)
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user