public AccountAdapter getMiner(final DataFetchingEnvironment environment) {

    final BlockchainQueries query = getBlockchainQueries(environment);
    long blockNumber = header.getNumber();
    final Long bn = environment.getArgument("block");
    if (bn != null) {
      blockNumber = bn;
    }

    return query
        .getAndMapWorldState(blockNumber, ws -> Optional.ofNullable(ws.get(header.getCoinbase())))
        .map(AccountAdapter::new)
        .orElseGet(() -> new EmptyAccountAdapter(header.getCoinbase()));
  }
Returns the miner of the current block.

@param environment the DataFetchingEnvironment
@return an AccountAdapter instance representing the miner of the block
ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/internal/pojoadapter/BlockAdapterBase.java