protected EthProtocolManager createEthProtocolManager(
      final ProtocolContext protocolContext,
      final SynchronizerConfiguration synchronizerConfiguration,
      final TransactionPool transactionPool,
      final EthProtocolConfiguration ethereumWireProtocolConfiguration,
      final EthPeers ethPeers,
      final EthContext ethContext,
      final EthMessages ethMessages,
      final EthScheduler scheduler,
      final List<PeerValidator> peerValidators,
      final Optional<MergePeerFilter> mergePeerFilter,
      final ForkIdManager forkIdManager) {
    return new EthProtocolManager(
        protocolContext.getBlockchain(),
        networkId,
        protocolContext.getWorldStateArchive(),
        transactionPool,
        ethereumWireProtocolConfiguration,
        ethPeers,
        ethMessages,
        ethContext,
        peerValidators,
        mergePeerFilter,
        synchronizerConfiguration,
        scheduler,
        forkIdManager);
  }
Create eth protocol manager eth protocol manager.

@param protocolContext the protocol context
@param synchronizerConfiguration the synchronizer configuration
@param transactionPool the transaction pool
@param ethereumWireProtocolConfiguration the ethereum wire protocol configuration
@param ethPeers the eth peers
@param ethContext the eth context
@param ethMessages the eth messages
@param scheduler the scheduler
@param peerValidators the peer validators
@param mergePeerFilter the merge peer filter
@param forkIdManager the fork id manager
@return the eth protocol manager
app/src/main/java/org/hyperledger/besu/controller/BesuControllerBuilder.java