1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43

content / browser / attribution_reporting / common_source_info.cc [blame]

// 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 "content/browser/attribution_reporting/common_source_info.h"

#include <utility>

#include "components/attribution_reporting/source_type.mojom-forward.h"
#include "components/attribution_reporting/suitable_origin.h"
#include "net/base/schemeful_site.h"

namespace content {

namespace {

using ::attribution_reporting::SuitableOrigin;
using ::attribution_reporting::mojom::SourceType;

}  // namespace

CommonSourceInfo::CommonSourceInfo(SuitableOrigin source_origin,
                                   SuitableOrigin reporting_origin,
                                   SourceType source_type,
                                   bool cookie_based_debug_allowed)
    : source_site_(net::SchemefulSite(source_origin)),
      source_origin_(std::move(source_origin)),
      reporting_origin_(std::move(reporting_origin)),
      source_type_(source_type),
      cookie_based_debug_allowed_(cookie_based_debug_allowed) {}

CommonSourceInfo::~CommonSourceInfo() = default;

CommonSourceInfo::CommonSourceInfo(const CommonSourceInfo&) = default;

CommonSourceInfo::CommonSourceInfo(CommonSourceInfo&&) = default;

CommonSourceInfo& CommonSourceInfo::operator=(const CommonSourceInfo&) =
    default;

CommonSourceInfo& CommonSourceInfo::operator=(CommonSourceInfo&&) = default;

}  // namespace content