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

content / public / browser / allow_service_worker_result.cc [blame]

// Copyright 2020 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/public/browser/allow_service_worker_result.h"

namespace content {

AllowServiceWorkerResult AllowServiceWorkerResult::Yes() {
  return AllowServiceWorkerResult(true, false, false);
}

AllowServiceWorkerResult AllowServiceWorkerResult::No() {
  return AllowServiceWorkerResult(false, false, false);
}

AllowServiceWorkerResult AllowServiceWorkerResult::FromPolicy(
    bool javascript_blocked_by_policy,
    bool cookies_blocked_by_policy) {
  return AllowServiceWorkerResult(
      !javascript_blocked_by_policy && !cookies_blocked_by_policy,
      javascript_blocked_by_policy, cookies_blocked_by_policy);
}

AllowServiceWorkerResult::AllowServiceWorkerResult(
    bool allowed,
    bool javascript_blocked_by_policy,
    bool cookies_blocked_by_policy)
    : allowed_(allowed),
      javascript_blocked_by_policy_(javascript_blocked_by_policy),
      cookies_blocked_by_policy_(cookies_blocked_by_policy) {}

bool AllowServiceWorkerResult::operator==(
    const AllowServiceWorkerResult& other) const {
  return allowed_ == other.allowed_ &&
         javascript_blocked_by_policy_ == other.javascript_blocked_by_policy_ &&
         cookies_blocked_by_policy_ == other.cookies_blocked_by_policy_;
}

}  // namespace content