// Copyright 2017 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.

#ifndef THIRD_PARTY_WEBKIT_COMMON_FEATURE_POLICY_FEATURE_POLICY_STRUCT_TRAITS_H_
#define THIRD_PARTY_WEBKIT_COMMON_FEATURE_POLICY_FEATURE_POLICY_STRUCT_TRAITS_H_

#include <vector>

#include "mojo/public/cpp/bindings/enum_traits.h"
#include "third_party/WebKit/common/common_export.h"
#include "third_party/WebKit/common/feature_policy/feature_policy.h"
#include "third_party/WebKit/common/feature_policy/feature_policy.mojom-shared.h"
#include "third_party/WebKit/common/feature_policy/feature_policy_feature.h"
#include "third_party/WebKit/common/sandbox_flags.h"

namespace mojo {

#define STATIC_ASSERT_ENUM(a, b)                            \
  static_assert(static_cast<int>(a) == static_cast<int>(b), \
                "mismatching enum : " #a)

// TODO(crbug.com/789818) - Merge these 2 FeaturePolicyFeature enums.
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kNotFound,
                   ::blink::mojom::FeaturePolicyFeature::kNotFound);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kAutoplay,
                   ::blink::mojom::FeaturePolicyFeature::kAutoplay);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kCamera,
                   ::blink::mojom::FeaturePolicyFeature::kCamera);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kEncryptedMedia,
                   ::blink::mojom::FeaturePolicyFeature::kEncryptedMedia);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kFullscreen,
                   ::blink::mojom::FeaturePolicyFeature::kFullscreen);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kGeolocation,
                   ::blink::mojom::FeaturePolicyFeature::kGeolocation);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kMicrophone,
                   ::blink::mojom::FeaturePolicyFeature::kMicrophone);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kMidiFeature,
                   ::blink::mojom::FeaturePolicyFeature::kMidiFeature);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kPayment,
                   ::blink::mojom::FeaturePolicyFeature::kPayment);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kSpeaker,
                   ::blink::mojom::FeaturePolicyFeature::kSpeaker);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kVibrate,
                   ::blink::mojom::FeaturePolicyFeature::kVibrate);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kDocumentCookie,
                   ::blink::mojom::FeaturePolicyFeature::kDocumentCookie);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kDocumentDomain,
                   ::blink::mojom::FeaturePolicyFeature::kDocumentDomain);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kDocumentWrite,
                   ::blink::mojom::FeaturePolicyFeature::kDocumentWrite);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kSyncScript,
                   ::blink::mojom::FeaturePolicyFeature::kSyncScript);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kSyncXHR,
                   ::blink::mojom::FeaturePolicyFeature::kSyncXHR);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kUsb,
                   ::blink::mojom::FeaturePolicyFeature::kUsb);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kWebVr,
                   ::blink::mojom::FeaturePolicyFeature::kWebVr);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kAccelerometer,
                   ::blink::mojom::FeaturePolicyFeature::kAccelerometer);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kAmbientLightSensor,
                   ::blink::mojom::FeaturePolicyFeature::kAmbientLightSensor);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kGyroscope,
                   ::blink::mojom::FeaturePolicyFeature::kGyroscope);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kMagnetometer,
                   ::blink::mojom::FeaturePolicyFeature::kMagnetometer);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kUnsizedMedia,
                   ::blink::mojom::FeaturePolicyFeature::kUnsizedMedia);
STATIC_ASSERT_ENUM(::blink::FeaturePolicyFeature::kPictureInPicture,
                   ::blink::mojom::FeaturePolicyFeature::kPictureInPicture);

// TODO(crbug.com/789818) - Merge these 2 WebSandboxFlags enums.
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kNone,
                   ::blink::mojom::WebSandboxFlags::kNone);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kNavigation,
                   ::blink::mojom::WebSandboxFlags::kNavigation);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kPlugins,
                   ::blink::mojom::WebSandboxFlags::kPlugins);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kOrigin,
                   ::blink::mojom::WebSandboxFlags::kOrigin);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kForms,
                   ::blink::mojom::WebSandboxFlags::kForms);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kScripts,
                   ::blink::mojom::WebSandboxFlags::kScripts);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kTopNavigation,
                   ::blink::mojom::WebSandboxFlags::kTopNavigation);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kPopups,
                   ::blink::mojom::WebSandboxFlags::kPopups);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kAutomaticFeatures,
                   ::blink::mojom::WebSandboxFlags::kAutomaticFeatures);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kPointerLock,
                   ::blink::mojom::WebSandboxFlags::kPointerLock);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kDocumentDomain,
                   ::blink::mojom::WebSandboxFlags::kDocumentDomain);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kOrientationLock,
                   ::blink::mojom::WebSandboxFlags::kOrientationLock);
STATIC_ASSERT_ENUM(
    ::blink::WebSandboxFlags::kPropagatesToAuxiliaryBrowsingContexts,
    ::blink::mojom::WebSandboxFlags::kPropagatesToAuxiliaryBrowsingContexts);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kModals,
                   ::blink::mojom::WebSandboxFlags::kModals);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kPresentationController,
                   ::blink::mojom::WebSandboxFlags::kPresentationController);
STATIC_ASSERT_ENUM(
    ::blink::WebSandboxFlags::kTopNavigationByUserActivation,
    ::blink::mojom::WebSandboxFlags::kTopNavigationByUserActivation);
STATIC_ASSERT_ENUM(::blink::WebSandboxFlags::kDownloads,
                   ::blink::mojom::WebSandboxFlags::kDownloads);

template <>
struct BLINK_COMMON_EXPORT
    EnumTraits<blink::mojom::WebSandboxFlags, blink::WebSandboxFlags> {
  static blink::mojom::WebSandboxFlags ToMojom(blink::WebSandboxFlags flags) {
    return static_cast<blink::mojom::WebSandboxFlags>(flags);
  }
  static bool FromMojom(blink::mojom::WebSandboxFlags in,
                        blink::WebSandboxFlags* out) {
    *out = static_cast<blink::WebSandboxFlags>(in);
    return true;
  }
};

template <>
struct BLINK_COMMON_EXPORT EnumTraits<blink::mojom::FeaturePolicyFeature,
                                      blink::FeaturePolicyFeature> {
  static blink::mojom::FeaturePolicyFeature ToMojom(
      blink::FeaturePolicyFeature feature) {
    return static_cast<blink::mojom::FeaturePolicyFeature>(feature);
  }
  static bool FromMojom(blink::mojom::FeaturePolicyFeature in,
                        blink::FeaturePolicyFeature* out) {
    *out = static_cast<blink::FeaturePolicyFeature>(in);
    return true;
  }
};

template <>
class BLINK_COMMON_EXPORT
    StructTraits<blink::mojom::ParsedFeaturePolicyDeclarationDataView,
                 blink::ParsedFeaturePolicyDeclaration> {
 public:
  static blink::FeaturePolicyFeature feature(
      const blink::ParsedFeaturePolicyDeclaration& policy) {
    return policy.feature;
  }
  static bool matches_all_origins(
      const blink::ParsedFeaturePolicyDeclaration& policy) {
    return policy.matches_all_origins;
  }
  static const std::vector<url::Origin>& origins(
      const blink::ParsedFeaturePolicyDeclaration& policy) {
    return policy.origins;
  }

  static bool Read(blink::mojom::ParsedFeaturePolicyDeclarationDataView in,
                   blink::ParsedFeaturePolicyDeclaration* out);
};

}  // namespace mojo

#endif  // THIRD_PARTY_WEBKIT_COMMON_FEATURE_POLICY_FEATURE_POLICY_STRUCT_TRAITS_H_
