// Copyright 2018 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 "extensions/common/core_extensions_api_provider.h" #include "extensions/common/api/api_features.h" #include "extensions/common/api/behavior_features.h" #include "extensions/common/api/generated_schemas.h" #include "extensions/common/api/manifest_features.h" #include "extensions/common/api/permission_features.h" #include "extensions/common/common_manifest_handlers.h" #include "extensions/common/features/json_feature_provider_source.h" #include "extensions/common/permissions/extensions_api_permissions.h" #include "extensions/common/permissions/permissions_info.h" #include "extensions/grit/extensions_resources.h" namespace extensions { CoreExtensionsAPIProvider::CoreExtensionsAPIProvider() {} CoreExtensionsAPIProvider::~CoreExtensionsAPIProvider() = default; void CoreExtensionsAPIProvider::AddAPIFeatures(FeatureProvider* provider) { AddCoreAPIFeatures(provider); } void CoreExtensionsAPIProvider::AddManifestFeatures(FeatureProvider* provider) { AddCoreManifestFeatures(provider); } void CoreExtensionsAPIProvider::AddPermissionFeatures( FeatureProvider* provider) { AddCorePermissionFeatures(provider); } void CoreExtensionsAPIProvider::AddBehaviorFeatures(FeatureProvider* provider) { AddCoreBehaviorFeatures(provider); } void CoreExtensionsAPIProvider::AddAPIJSONSources( JSONFeatureProviderSource* json_source) { json_source->LoadJSON(IDR_EXTENSION_API_FEATURES); } bool CoreExtensionsAPIProvider::IsAPISchemaGenerated(const std::string& name) { return api::GeneratedSchemas::IsGenerated(name); } base::StringPiece CoreExtensionsAPIProvider::GetAPISchema( const std::string& name) { return api::GeneratedSchemas::Get(name); } void CoreExtensionsAPIProvider::RegisterPermissions( PermissionsInfo* permissions_info) { permissions_info->RegisterPermissions( api_permissions::GetPermissionInfos(), api_permissions::GetPermissionAliases()); } void CoreExtensionsAPIProvider::RegisterManifestHandlers() { RegisterCommonManifestHandlers(); } } // namespace extensions