chromium/third_party/ipcz/src/ipcz/remote_router_link.cc

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "ipcz/remote_router_link.h"

#include <algorithm>
#include <sstream>
#include <utility>
#include <vector>

#include "ipcz/application_object.h"
#include "ipcz/box.h"
#include "ipcz/node_link.h"
#include "ipcz/node_link_memory.h"
#include "ipcz/node_messages.h"
#include "ipcz/parcel.h"
#include "ipcz/router.h"
#include "util/log.h"
#include "util/safe_math.h"

namespace ipcz {

RemoteRouterLink::RemoteRouterLink(Ref<NodeLink> node_link,
                                   SublinkId sublink,
                                   FragmentRef<RouterLinkState> link_state,
                                   LinkType type,
                                   LinkSide side)
    :{}

RemoteRouterLink::~RemoteRouterLink() = default;

// static
Ref<RemoteRouterLink> RemoteRouterLink::Create(
    Ref<NodeLink> node_link,
    SublinkId sublink,
    FragmentRef<RouterLinkState> link_state,
    LinkType type,
    LinkSide side) {}

void RemoteRouterLink::SetLinkState(FragmentRef<RouterLinkState> state) {}

LinkType RemoteRouterLink::GetType() const {}

RouterLinkState* RemoteRouterLink::GetLinkState() const {}

void RemoteRouterLink::WaitForLinkStateAsync(std::function<void()> callback) {}

Ref<Router> RemoteRouterLink::GetLocalPeer() {}

RemoteRouterLink* RemoteRouterLink::AsRemoteRouterLink() {}

void RemoteRouterLink::AllocateParcelData(size_t num_bytes,
                                          bool allow_partial,
                                          Parcel& parcel) {}

void RemoteRouterLink::AcceptParcel(std::unique_ptr<Parcel> parcel) {}

void RemoteRouterLink::AcceptRouteClosure(SequenceNumber sequence_length) {}

void RemoteRouterLink::AcceptRouteDisconnected() {}

void RemoteRouterLink::MarkSideStable() {}

bool RemoteRouterLink::TryLockForBypass(const NodeName& bypass_request_source) {}

bool RemoteRouterLink::TryLockForClosure() {}

void RemoteRouterLink::Unlock() {}

bool RemoteRouterLink::FlushOtherSideIfWaiting() {}

bool RemoteRouterLink::CanNodeRequestBypass(
    const NodeName& bypass_request_source) {}

void RemoteRouterLink::Deactivate() {}

void RemoteRouterLink::BypassPeer(const NodeName& bypass_target_node,
                                  SublinkId bypass_target_sublink) {}

void RemoteRouterLink::StopProxying(SequenceNumber inbound_sequence_length,
                                    SequenceNumber outbound_sequence_length) {}

void RemoteRouterLink::ProxyWillStop(SequenceNumber inbound_sequence_length) {}

void RemoteRouterLink::BypassPeerWithLink(
    SublinkId new_sublink,
    FragmentRef<RouterLinkState> new_link_state,
    SequenceNumber inbound_sequence_length) {}

void RemoteRouterLink::StopProxyingToLocalPeer(
    SequenceNumber outbound_sequence_length) {}

std::string RemoteRouterLink::Describe() const {}

}  // namespace ipcz