chromium/third_party/blink/renderer/core/timing/performance_resource_timing.cc

/*
 * Copyright (C) 2012 Google Inc. All rights reserved.
 * Copyright (C) 2012 Intel Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 *
 *     * Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
 * copyright notice, this list of conditions and the following disclaimer
 * in the documentation and/or other materials provided with the
 * distribution.
 *     * Neither the name of Google Inc. nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#include "third_party/blink/renderer/core/timing/performance_resource_timing.h"

#include "base/notreached.h"
#include "services/network/public/mojom/service_worker_router_info.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/fetch/fetch_api_request.mojom-blink.h"
#include "third_party/blink/public/mojom/timing/performance_mark_or_measure.mojom-blink.h"
#include "third_party/blink/public/mojom/timing/resource_timing.mojom-blink-forward.h"
#include "third_party/blink/renderer/bindings/core/v8/idl_types.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_object_builder.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/performance_entry_names.h"
#include "third_party/blink/renderer/core/timing/performance.h"
#include "third_party/blink/renderer/core/timing/performance_entry.h"
#include "third_party/blink/renderer/core/timing/performance_mark.h"
#include "third_party/blink/renderer/core/timing/performance_measure.h"
#include "third_party/blink/renderer/core/timing/performance_server_timing.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/loader/fetch/delivery_type_names.h"
#include "third_party/blink/renderer/platform/loader/fetch/fetch_initiator_type_names.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_load_timing.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_request.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_response.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_timing_utils.h"
#include "third_party/blink/renderer/platform/loader/fetch/service_worker_router_info.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/scheduler/public/thread_scheduler.h"
#include "third_party/blink/renderer/platform/wtf/text/atomic_string.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"

namespace blink {

NavigationDeliveryType;

PerformanceResourceTiming::PerformanceResourceTiming(
    mojom::blink::ResourceTimingInfoPtr info,
    const AtomicString& initiator_type,
    base::TimeTicks time_origin,
    bool cross_origin_isolated_capability,
    ExecutionContext* context)
    :{}

PerformanceResourceTiming::~PerformanceResourceTiming() = default;

const AtomicString& PerformanceResourceTiming::entryType() const {}

PerformanceEntryType PerformanceResourceTiming::EntryTypeEnum() const {}

uint64_t PerformanceResourceTiming::GetTransferSize(
    uint64_t encoded_body_size,
    mojom::blink::CacheState cache_state) {}

AtomicString PerformanceResourceTiming::GetDeliveryType() const {}

AtomicString PerformanceResourceTiming::deliveryType() const {}

AtomicString PerformanceResourceTiming::renderBlockingStatus() const {}

AtomicString PerformanceResourceTiming::contentType() const {}

uint16_t PerformanceResourceTiming::responseStatus() const {}

AtomicString PerformanceResourceTiming::GetNextHopProtocol(
    const AtomicString& alpn_negotiated_protocol,
    const AtomicString& connection_info) const {}

AtomicString PerformanceResourceTiming::nextHopProtocol() const {}

DOMHighResTimeStamp PerformanceResourceTiming::workerStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::workerRouterEvaluationStart()
    const {}

DOMHighResTimeStamp PerformanceResourceTiming::workerCacheLookupStart() const {}

AtomicString PerformanceResourceTiming::matchedSourceType() const {}

AtomicString PerformanceResourceTiming::finalSourceType() const {}

DOMHighResTimeStamp PerformanceResourceTiming::WorkerReady() const {}

DOMHighResTimeStamp PerformanceResourceTiming::redirectStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::redirectEnd() const {}

DOMHighResTimeStamp PerformanceResourceTiming::fetchStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::domainLookupStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::domainLookupEnd() const {}

DOMHighResTimeStamp PerformanceResourceTiming::connectStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::connectEnd() const {}

DOMHighResTimeStamp PerformanceResourceTiming::secureConnectionStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::requestStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::firstInterimResponseStart()
    const {}

DOMHighResTimeStamp PerformanceResourceTiming::responseStart() const {}

DOMHighResTimeStamp PerformanceResourceTiming::GetAnyFirstResponseStart()
    const {}

DOMHighResTimeStamp PerformanceResourceTiming::responseEnd() const {}

uint64_t PerformanceResourceTiming::transferSize() const {}

uint64_t PerformanceResourceTiming::encodedBodySize() const {}

uint64_t PerformanceResourceTiming::decodedBodySize() const {}

const HeapVector<Member<PerformanceServerTiming>>&
PerformanceResourceTiming::serverTiming() const {}

void PerformanceResourceTiming::BuildJSONValue(V8ObjectBuilder& builder) const {}

void PerformanceResourceTiming::Trace(Visitor* visitor) const {}

}  // namespace blink