blob: e5e7c81aa1edf56c3fd7299c92a1bed18a7d759b [file] [log] [blame]
// Copyright 2025 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_CACHED_FLAGS_ANDROID_JNI_DELEGATE_IMPL_H_
#define COMPONENTS_CACHED_FLAGS_ANDROID_JNI_DELEGATE_IMPL_H_
#include "jni_delegate.h"
namespace cached_flags {
// An implementation of JniDelegate, which makes the appropriate JNI calls.
class JniDelegateImpl : public JniDelegate {
public:
~JniDelegateImpl() override;
void CacheNativeFlagsImmediately(
const std::map<std::string, std::string>& features) override;
void CacheFeatureParamsImmediately(
const std::map<std::string, std::map<std::string, std::string>>&
feature_params) override;
void EraseNativeFlagCachedValues(
const std::vector<std::string>& features_to_erase) override;
void EraseFeatureParamCachedValues(
const std::vector<std::string>& feature_params_to_erase) override;
};
} // namespace cached_flags
#endif // COMPONENTS_CACHED_FLAGS_ANDROID_JNI_DELEGATE_IMPL_H_