#ifndef CHROME_BROWSER_AUTOFILL_ANDROID_ENTITY_DATA_MANAGER_ANDROID_H_
#define CHROME_BROWSER_AUTOFILL_ANDROID_ENTITY_DATA_MANAGER_ANDROID_H_
#include "base/android/jni_weak_ref.h"
#include "base/android/scoped_java_ref.h"
#include "base/memory/raw_ref.h"
#include "components/autofill/core/browser/data_manager/autofill_ai/entity_data_manager.h"
#include "components/autofill/core/browser/data_model/autofill_ai/entity_instance.h"
namespace autofill {
class EntityDataManagerAndroid {
public:
EntityDataManagerAndroid(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj,
EntityDataManager* entity_data_manager);
EntityDataManagerAndroid(const EntityDataManagerAndroid&) = delete;
EntityDataManagerAndroid& operator=(const EntityDataManagerAndroid&) = delete;
void Destroy(JNIEnv* env);
void RemoveEntityInstance(JNIEnv* env, const std::string& guid);
private:
~EntityDataManagerAndroid();
EntityDataManager& entity_data_manager() {
return entity_data_manager_.get();
}
JavaObjectWeakGlobalRef weak_java_obj_;
raw_ref<EntityDataManager> entity_data_manager_;
};
}
#endif