12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #![warn(missing_docs)]
- use frame_support::traits::{Currency, Imbalance};
- use frame_support::StorageMap;
- use sp_std::marker::PhantomData;
- type BalanceOf<T> =
- <<T as stake::Trait>::Currency as Currency<<T as system::Trait>::AccountId>>::Balance;
- type NegativeImbalance<T> =
- <<T as stake::Trait>::Currency as Currency<<T as system::Trait>::AccountId>>::NegativeImbalance;
- pub struct StakingEventsHandler<T> {
- pub marker: PhantomData<T>,
- }
- impl<T: stake::Trait + proposals_engine::Trait> stake::StakingEventsHandler<T>
- for StakingEventsHandler<T>
- {
-
- fn unstaked(
- id: &<T as stake::Trait>::StakeId,
- _unstaked_amount: BalanceOf<T>,
- remaining_imbalance: NegativeImbalance<T>,
- ) -> NegativeImbalance<T> {
- if <proposals_engine::StakesProposals<T>>::contains_key(id) {
- <proposals_engine::Module<T>>::refund_proposal_stake(*id, remaining_imbalance);
- return <NegativeImbalance<T>>::zero();
- }
- remaining_imbalance
- }
-
- fn slashed(
- _: &<T as stake::Trait>::StakeId,
- _: Option<<T as stake::Trait>::SlashId>,
- _: BalanceOf<T>,
- _: BalanceOf<T>,
- remaining_imbalance: NegativeImbalance<T>,
- ) -> NegativeImbalance<T> {
- remaining_imbalance
- }
- }
|