llarp/tooling/hive_router.hpp

Namespaces

Name
tooling

Classes

Name
struct tooling::HiveRouter
HiveRouter is a subclass of Router which overrides specific behavior in order to perform testing-related functions.

Source code

#pragma once

#include <llarp/router/router.hpp>

namespace tooling
{
  struct HiveRouter : public llarp::Router
  {
    explicit HiveRouter(
        llarp::EventLoop_ptr loop,
        std::shared_ptr<llarp::vpn::Platform> vpnPlatform,
        RouterHive* hive);

    virtual ~HiveRouter() = default;

    virtual bool
    disableGossipingRC_TestingOnly() override;

    void
    disableGossiping();

    void
    enableGossiping();

   protected:
    bool m_disableGossiping = false;
    RouterHive* m_hive = nullptr;

    virtual void
    HandleRouterEvent(RouterEventPtr event) const override;
  };

}  // namespace tooling

Updated on 2026-01-10 at 22:49:45 +0000