#ifndef BASE_ANDROID_UNGUESSABLE_TOKEN_ANDROID_H_
#define BASE_ANDROID_UNGUESSABLE_TOKEN_ANDROID_H_
#include <jni.h>
#include "base/android/scoped_java_ref.h"
#include "base/base_export.h"
#include "base/unguessable_token.h"
namespace base {
namespace android {
class BASE_EXPORT UnguessableTokenAndroid {
public:
static ScopedJavaLocalRef<jobject> Create(
JNIEnv* env,
const base::UnguessableToken& token);
static absl::optional<base::UnguessableToken> FromJavaUnguessableToken(
JNIEnv* env,
const JavaRef<jobject>& token);
static ScopedJavaLocalRef<jobject> ParcelAndUnparcelForTesting(
JNIEnv* env,
const JavaRef<jobject>& token);
UnguessableTokenAndroid() = delete;
UnguessableTokenAndroid(const UnguessableTokenAndroid&) = delete;
UnguessableTokenAndroid& operator=(const UnguessableTokenAndroid&) = delete;
};
}
}
#endif