Compare commits
2 commits
9af4518d0f
...
ebfca5b309
Author | SHA1 | Date | |
---|---|---|---|
ebfca5b309 | |||
9a63011036 |
4 changed files with 39 additions and 31 deletions
|
@ -7,7 +7,9 @@ data class LocalProfileInfo(
|
||||||
val nickName: String,
|
val nickName: String,
|
||||||
val providerName: String,
|
val providerName: String,
|
||||||
val isdpAID: String,
|
val isdpAID: String,
|
||||||
val profileClass: ProfileClass
|
val profileClass: ProfileClass,
|
||||||
|
val iconType: String,
|
||||||
|
val icon: String,
|
||||||
)
|
)
|
||||||
|
|
||||||
enum class ProfileState { Enabled, Disabled }
|
enum class ProfileState { Enabled, Disabled }
|
||||||
|
|
|
@ -147,6 +147,8 @@ Java_net_typeblog_lpac_1jni_LpacJni_es10cGetProfilesInfo(
|
||||||
"Ljava/lang/String;" // provider name
|
"Ljava/lang/String;" // provider name
|
||||||
"Ljava/lang/String;" // ISD-P AID
|
"Ljava/lang/String;" // ISD-P AID
|
||||||
"Lnet/typeblog/lpac_jni/ProfileClass;"
|
"Lnet/typeblog/lpac_jni/ProfileClass;"
|
||||||
|
"Ljava/lang/String;" // icon type
|
||||||
|
"Ljava/lang/String;" // icon
|
||||||
")"
|
")"
|
||||||
"V" // (returns) void
|
"V" // (returns) void
|
||||||
);
|
);
|
||||||
|
@ -164,7 +166,9 @@ Java_net_typeblog_lpac_1jni_LpacJni_es10cGetProfilesInfo(
|
||||||
toJString(env, info->profileNickname),
|
toJString(env, info->profileNickname),
|
||||||
toJString(env, info->serviceProviderName),
|
toJString(env, info->serviceProviderName),
|
||||||
toJString(env, info->isdpAid),
|
toJString(env, info->isdpAid),
|
||||||
to_profile_class(info->profileClass)
|
to_profile_class(info->profileClass),
|
||||||
|
to_icon_type(env, info->iconType),
|
||||||
|
toJString(env, info->icon)
|
||||||
);
|
);
|
||||||
(*env)->CallBooleanMethod(env, profile_list, add_profile, element);
|
(*env)->CallBooleanMethod(env, profile_list, add_profile, element);
|
||||||
info = info->next;
|
info = info->next;
|
||||||
|
|
|
@ -45,27 +45,26 @@ static void init_string_class(JNIEnv *env) {
|
||||||
empty_string = (*env)->NewGlobalRef(env, empty_string);
|
empty_string = (*env)->NewGlobalRef(env, empty_string);
|
||||||
}
|
}
|
||||||
|
|
||||||
void lpac_convertor_init(JNIEnv *env) {
|
static void init_version_class(JNIEnv *env) {
|
||||||
init_string_class(env);
|
|
||||||
|
|
||||||
version_class = (*env)->FindClass(env, VERSION_CLASS);
|
version_class = (*env)->FindClass(env, VERSION_CLASS);
|
||||||
version_class = (*env)->NewGlobalRef(env, version_class);
|
version_class = (*env)->NewGlobalRef(env, version_class);
|
||||||
version_constructor = (*env)->GetMethodID(
|
version_constructor = (*env)->GetMethodID(env, version_class, "<init>", "(Ljava/lang/String;)V");
|
||||||
env, version_class, "<init>", "(Ljava/lang/String;)V");
|
}
|
||||||
|
|
||||||
jclass profile_state_class = (*env)->FindClass(
|
void lpac_convertor_init(JNIEnv *env) {
|
||||||
env, PROFILE_STATE_CLASS);
|
init_string_class(env);
|
||||||
|
init_version_class(env);
|
||||||
|
|
||||||
|
jclass profile_state_class = (*env)->FindClass(env, PROFILE_STATE_CLASS);
|
||||||
BIND_PROFILE_STATE_STATIC_FIELD(enabled, "Enabled");
|
BIND_PROFILE_STATE_STATIC_FIELD(enabled, "Enabled");
|
||||||
BIND_PROFILE_STATE_STATIC_FIELD(disabled, "Disabled");
|
BIND_PROFILE_STATE_STATIC_FIELD(disabled, "Disabled");
|
||||||
|
|
||||||
jclass profile_class_class = (*env)->FindClass(
|
jclass profile_class_class = (*env)->FindClass(env, PROFILE_CLASS_CLASS);
|
||||||
env, PROFILE_CLASS_CLASS);
|
|
||||||
BIND_PROFILE_CLASS_STATIC_FIELD(operational, "Operational");
|
BIND_PROFILE_CLASS_STATIC_FIELD(operational, "Operational");
|
||||||
BIND_PROFILE_CLASS_STATIC_FIELD(provisioning, "Provisioning");
|
BIND_PROFILE_CLASS_STATIC_FIELD(provisioning, "Provisioning");
|
||||||
BIND_PROFILE_CLASS_STATIC_FIELD(testing, "Testing");
|
BIND_PROFILE_CLASS_STATIC_FIELD(testing, "Testing");
|
||||||
|
|
||||||
jclass profile_management_operation_class = (*env)->FindClass(
|
jclass profile_management_operation_class = (*env)->FindClass(env, PROFILE_MANAGEMENT_OPERATION_CLASS);
|
||||||
env, PROFILE_MANAGEMENT_OPERATION_CLASS);
|
|
||||||
BIND_NOTIFICATION_OPERATION_FIELD(install, "Install");
|
BIND_NOTIFICATION_OPERATION_FIELD(install, "Install");
|
||||||
BIND_NOTIFICATION_OPERATION_FIELD(delete, "Delete");
|
BIND_NOTIFICATION_OPERATION_FIELD(delete, "Delete");
|
||||||
BIND_NOTIFICATION_OPERATION_FIELD(enable, "Enable");
|
BIND_NOTIFICATION_OPERATION_FIELD(enable, "Enable");
|
||||||
|
@ -116,6 +115,21 @@ jobject to_profile_class(enum es10c_profile_class profile_class) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
jobject to_profile_management_operation(enum es10b_profile_management_operation operation) {
|
||||||
|
switch (operation) {
|
||||||
|
case ES10B_PROFILE_MANAGEMENT_OPERATION_INSTALL:
|
||||||
|
return profile_management_operation_install;
|
||||||
|
case ES10B_PROFILE_MANAGEMENT_OPERATION_DELETE:
|
||||||
|
return profile_management_operation_delete;
|
||||||
|
case ES10B_PROFILE_MANAGEMENT_OPERATION_ENABLE:
|
||||||
|
return profile_management_operation_enable;
|
||||||
|
case ES10B_PROFILE_MANAGEMENT_OPERATION_DISABLE:
|
||||||
|
return profile_management_operation_disable;
|
||||||
|
default:
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
jstring to_icon_type(JNIEnv *env, enum es10c_icon_type icon_type) {
|
jstring to_icon_type(JNIEnv *env, enum es10c_icon_type icon_type) {
|
||||||
switch (icon_type) {
|
switch (icon_type) {
|
||||||
case ES10C_ICON_TYPE_JPEG:
|
case ES10C_ICON_TYPE_JPEG:
|
||||||
|
@ -182,25 +196,11 @@ jobject build_profile_metadata(JNIEnv *env, struct es8p_metadata *metadata) {
|
||||||
toJString(env, metadata->profileName),
|
toJString(env, metadata->profileName),
|
||||||
to_icon_type(env, metadata->iconType),
|
to_icon_type(env, metadata->iconType),
|
||||||
toJString(env, metadata->icon),
|
toJString(env, metadata->icon),
|
||||||
to_profile_class(metadata->profileClass)
|
to_profile_class(metadata->profileClass
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
jobject to_profile_management_operation(enum es10b_profile_management_operation operation) {
|
|
||||||
switch (operation) {
|
|
||||||
case ES10B_PROFILE_MANAGEMENT_OPERATION_INSTALL:
|
|
||||||
return profile_management_operation_install;
|
|
||||||
case ES10B_PROFILE_MANAGEMENT_OPERATION_DELETE:
|
|
||||||
return profile_management_operation_delete;
|
|
||||||
case ES10B_PROFILE_MANAGEMENT_OPERATION_ENABLE:
|
|
||||||
return profile_management_operation_enable;
|
|
||||||
case ES10B_PROFILE_MANAGEMENT_OPERATION_DISABLE:
|
|
||||||
return profile_management_operation_disable;
|
|
||||||
default:
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
jobject new_array_list(JNIEnv *env) {
|
jobject new_array_list(JNIEnv *env) {
|
||||||
jclass array_list_class = (*env)->FindClass(env, ARRAY_LIST_CLASS);
|
jclass array_list_class = (*env)->FindClass(env, ARRAY_LIST_CLASS);
|
||||||
jmethodID array_list_constructor = (*env)->GetMethodID(env, array_list_class, "<init>", "()V");
|
jmethodID array_list_constructor = (*env)->GetMethodID(env, array_list_class, "<init>", "()V");
|
||||||
|
|
|
@ -27,6 +27,10 @@ jobject to_profile_state(enum es10c_profile_state profile_state);
|
||||||
|
|
||||||
jobject to_profile_class(enum es10c_profile_class profile_class);
|
jobject to_profile_class(enum es10c_profile_class profile_class);
|
||||||
|
|
||||||
|
jobject to_profile_management_operation(enum es10b_profile_management_operation operation);
|
||||||
|
|
||||||
|
jstring to_icon_type(JNIEnv *env, enum es10c_icon_type icon_type);
|
||||||
|
|
||||||
jobject to_version(JNIEnv *env, const char *version);
|
jobject to_version(JNIEnv *env, const char *version);
|
||||||
|
|
||||||
jobject to_string_set(JNIEnv *env, char **values);
|
jobject to_string_set(JNIEnv *env, char **values);
|
||||||
|
@ -35,6 +39,4 @@ jobject to_string_list(JNIEnv *env, char **values);
|
||||||
|
|
||||||
jobject build_profile_metadata(JNIEnv *env, struct es8p_metadata *metadata);
|
jobject build_profile_metadata(JNIEnv *env, struct es8p_metadata *metadata);
|
||||||
|
|
||||||
jobject to_profile_management_operation(enum es10b_profile_management_operation operation);
|
|
||||||
|
|
||||||
jobject new_array_list(JNIEnv *env);
|
jobject new_array_list(JNIEnv *env);
|
||||||
|
|
Loading…
Add table
Reference in a new issue