mirror of https://github.com/hyperledger/besu
Move IbftEvents to common (#1698)
Moves IBFT events to the common package for reuse with the QBFT implementation. This necessitated the creation of BftEventHandler interface, such that a generic IbftController can be passed around, rather than the literal IbftController. Signed-off-by: Trent Mohay <trent.mohay@consensys.net>pull/1703/head
parent
4f30b01c0d
commit
bdf9408b8d
@ -0,0 +1,33 @@ |
||||
/* |
||||
* Copyright ConsenSys AG. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on |
||||
* an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations under the License. |
||||
* |
||||
* SPDX-License-Identifier: Apache-2.0 |
||||
*/ |
||||
package org.hyperledger.besu.consensus.common.bft.statemachine; |
||||
|
||||
import org.hyperledger.besu.consensus.common.bft.events.BlockTimerExpiry; |
||||
import org.hyperledger.besu.consensus.common.bft.events.IbftReceivedMessageEvent; |
||||
import org.hyperledger.besu.consensus.common.bft.events.NewChainHead; |
||||
import org.hyperledger.besu.consensus.common.bft.events.RoundExpiry; |
||||
|
||||
public interface BftEventHandler { |
||||
|
||||
void start(); |
||||
|
||||
void handleMessageEvent(IbftReceivedMessageEvent msg); |
||||
|
||||
void handleNewBlockEvent(NewChainHead newChainHead); |
||||
|
||||
void handleBlockTimerExpiry(BlockTimerExpiry blockTimerExpiry); |
||||
|
||||
void handleRoundExpiry(RoundExpiry roundExpiry); |
||||
} |
Loading…
Reference in new issue