chromium/net/third_party/quiche/src/quiche/quic/core/http/web_transport_http3.cc

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

#include "quiche/quic/core/http/web_transport_http3.h"

#include <limits>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>


#include "absl/strings/string_view.h"
#include "quiche/quic/core/http/quic_spdy_session.h"
#include "quiche/quic/core/http/quic_spdy_stream.h"
#include "quiche/quic/core/quic_data_reader.h"
#include "quiche/quic/core/quic_data_writer.h"
#include "quiche/quic/core/quic_error_codes.h"
#include "quiche/quic/core/quic_stream.h"
#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/core/quic_utils.h"
#include "quiche/quic/core/quic_versions.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
#include "quiche/common/capsule.h"
#include "quiche/common/platform/api/quiche_logging.h"
#include "quiche/web_transport/web_transport.h"

#define ENDPOINT

namespace quic {

namespace {
class NoopWebTransportVisitor : public WebTransportVisitor {};
}  // namespace

WebTransportHttp3::WebTransportHttp3(QuicSpdySession* session,
                                     QuicSpdyStream* connect_stream,
                                     WebTransportSessionId id)
    :{}

void WebTransportHttp3::AssociateStream(QuicStreamId stream_id) {}

void WebTransportHttp3::OnConnectStreamClosing() {}

void WebTransportHttp3::CloseSession(WebTransportSessionError error_code,
                                     absl::string_view error_message) {}

void WebTransportHttp3::OnCloseReceived(WebTransportSessionError error_code,
                                        absl::string_view error_message) {}

void WebTransportHttp3::OnConnectStreamFinReceived() {}

void WebTransportHttp3::CloseSessionWithFinOnlyForTests() {}

void WebTransportHttp3::HeadersReceived(
    const quiche::HttpHeaderBlock& headers) {}

WebTransportStream* WebTransportHttp3::AcceptIncomingBidirectionalStream() {}

WebTransportStream* WebTransportHttp3::AcceptIncomingUnidirectionalStream() {}

bool WebTransportHttp3::CanOpenNextOutgoingBidirectionalStream() {}
bool WebTransportHttp3::CanOpenNextOutgoingUnidirectionalStream() {}
WebTransportStream* WebTransportHttp3::OpenOutgoingBidirectionalStream() {}

WebTransportStream* WebTransportHttp3::OpenOutgoingUnidirectionalStream() {}

webtransport::Stream* WebTransportHttp3::GetStreamById(
    webtransport::StreamId id) {}

webtransport::DatagramStatus WebTransportHttp3::SendOrQueueDatagram(
    absl::string_view datagram) {}

QuicByteCount WebTransportHttp3::GetMaxDatagramSize() const {}

void WebTransportHttp3::SetDatagramMaxTimeInQueue(
    absl::Duration max_time_in_queue) {}

void WebTransportHttp3::NotifySessionDraining() {}

void WebTransportHttp3::OnHttp3Datagram(QuicStreamId stream_id,
                                        absl::string_view payload) {}

void WebTransportHttp3::MaybeNotifyClose() {}

void WebTransportHttp3::OnGoAwayReceived() {}

void WebTransportHttp3::OnDrainSessionReceived() {}

WebTransportHttp3UnidirectionalStream::WebTransportHttp3UnidirectionalStream(
    PendingStream* pending, QuicSpdySession* session)
    :{}

WebTransportHttp3UnidirectionalStream::WebTransportHttp3UnidirectionalStream(
    QuicStreamId id, QuicSpdySession* session, WebTransportSessionId session_id)
    :{}

void WebTransportHttp3UnidirectionalStream::WritePreamble() {}

bool WebTransportHttp3UnidirectionalStream::ReadSessionId() {}

void WebTransportHttp3UnidirectionalStream::OnDataAvailable() {}

void WebTransportHttp3UnidirectionalStream::OnCanWriteNewData() {}

void WebTransportHttp3UnidirectionalStream::OnClose() {}

void WebTransportHttp3UnidirectionalStream::OnStreamReset(
    const QuicRstStreamFrame& frame) {}
bool WebTransportHttp3UnidirectionalStream::OnStopSending(
    QuicResetStreamError error) {}
void WebTransportHttp3UnidirectionalStream::OnWriteSideInDataRecvdState() {}

namespace {
constexpr uint64_t kWebTransportMappedErrorCodeFirst =;
constexpr uint64_t kWebTransportMappedErrorCodeLast =;
constexpr WebTransportStreamError kDefaultWebTransportError =;
}  // namespace

std::optional<WebTransportStreamError> Http3ErrorToWebTransport(
    uint64_t http3_error_code) {}

WebTransportStreamError Http3ErrorToWebTransportOrDefault(
    uint64_t http3_error_code) {}

uint64_t WebTransportErrorToHttp3(
    WebTransportStreamError webtransport_error_code) {}

}  // namespace quic