AusweisApp
Lade ...
Suche ...
Keine Treffer
eid_applet_utils.h
gehe zur Dokumentation dieser Datei
1/*
2 * Copyright (C) 2023 by Bundesdruckerei GmbH and Governikus GmbH & Co. KG
3 * Licensed under the EUPL-1.2
4 */
5
6#pragma once
7
9#include <jni.h>
10#include <string>
11
12namespace jniService {
13 // constructor
14 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/jni/SmartEidServiceNativeBridge";
15 const char*const stdInit = "<init>";
16
17 // methods
18 const char*const init = "initialize";
19 const char*const sig = "(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lde/bundesdruckerei/android/eid_applet_service_lib/GenericDataResult;";
20
21 const char*const shutdownMethod = "shutdown";
22 const char*const shutdownMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/GenericDataResult;";
23
24 const char*const performAPDUCommandMethod = "performAPDUCommand";
25 const char*const performAPDUCommandMethodSig = "(Ljava/lang/String;)Lde/bundesdruckerei/android/eid_applet_service_lib/GenericDataResult;";
26
27 const char*const installSmartEidMethod = "installSmartEid";
28 const char*const installSmartEidMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
29
30 const char*const deleteSmartEidMethod = "deleteSmartEid";
31 const char*const deleteSmartEidMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
32
33 const char*const initializePersonalizationMethod = "initializePersonalization";
34 const char*const initializePersonalizationMethodSig = "(Ljava/lang/String;)Lde/bundesdruckerei/android/eid_applet_service_lib/InitializeResult;";
35
36 const char*const performPersonalizationMethod = "performPersonalization";
37 const char*const performPersonalizationMethodSig = "(Ljava/lang/String;)Lde/bundesdruckerei/android/eid_applet_service_lib/GenericDataResult;";
38
39 const char*const releaseAppletConnectionMethod = "releaseAppletConnection";
40 const char*const releaseAppletConnectionMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
41
42 const char*const eIDStatusMethod = "smartEidStatus";
43 const char*const eIDStatusMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/EidStatus;";
44
45 const char*const smartEidSupportInfo = "smartEidSupportInfo";
46 const char*const smartEidSupportInfoMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatusResult;";
47
48 const char*const finalizePersonalizationMethod = "finalizePersonalization";
49 const char*const finalizePersonalizationMethodSig = "(I)Lde/bundesdruckerei/android/eid_applet_service_lib/PersonalizationResult;";
50
51 const char*const deletePersonalizationMethod = "deletePersonalization";
52 const char*const deletePersonalizationMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
53
54 const char*const getServiceInformationMethod = "serviceInformation";
55 const char*const getServiceInformationMethodSig = "()Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceInformationResult;";
56} // namespace jniService
57
59 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/GenericDataResult";
60 const char*const sig = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;Ljava/lang/String;)V";
61 const char*const init = "<init>";
62 const char*const result = "result";
63 const char*const resultType = "Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
64 const char*const data = "data";
65 const char*const dataType = "Ljava/lang/String;";
66} // namespace jniGenericDataResult
67
69 const char*const init = "<init>";
70 const char*const sig = "()V";
71 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/jni/ServiceResultMap";
72 const char*const sigGetByValue = "(I)Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
73 const char*const getByValue = "getByValue";
74 const char*const sigGetValue = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;)I";
75 const char*const getValue = "getValue";
76} // namespace jniServiceResult
77
78namespace jniSmartEidType {
79 const char*const init = "<init>";
80 const char*const sig = "()V";
81 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/jni/SmartEidTypeMap";
82 const char*const sigGetByValue = "(I)Lde/bundesdruckerei/android/eid_applet_service_lib/SmartEidType;";
83 const char*const getByValue = "getByValue";
84 const char*const sigGetValue = "(Lde/bundesdruckerei/android/eid_applet_service_lib/SmartEidType;)I";
85 const char*const getValue = "getValue";
86} // namespace jniSmartEidType
87
88namespace jniEidStatus {
89 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/jni/EidStatusMap";
90 const char*const sigGetByValue = "(I)Lde/bundesdruckerei/android/eid_applet_service_lib/EidStatus;";
91 const char*const getByValue = "getByValue";
92 const char*const sigGetValue = "(Lde/bundesdruckerei/android/eid_applet_service_lib/EidStatus;)I";
93 const char*const getValue = "getValue";
94} // namespace jniEidStatus
95
97 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatusResult";
98 const char*const sig = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;Lde/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatus;)V";
99 const char*const init = "<init>";
100 // ServiceResult
101 const char*const result = "result";
102 const char*const resultType = "Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
103 // EidSupportInfo
104 const char*const status = "supportStatus";
105 const char*const statusType = "Lde/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatus;";
106} // namespace jniEidSupportStatusResult
107
109 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/jni/EidSupportStatusMap";
110 const char*const init = "<init>";
111 const char*const sig = "()V";
112 const char*const sigGetByValue = "(I)Lde/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatus;";
113 const char*const getByValue = "getByValue";
114 const char*const sigGetValue = "(Lde/bundesdruckerei/android/eid_applet_service_lib/EidSupportStatus;)I";
115 const char*const getValue = "getValue";
116} // namespace jniEidSupportStatus
117
119 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/InitializeResult";
120 const char*const sig = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;Ljava/lang/String;)V";
121 const char*const init = "<init>";
122 const char*const result = "result";
123 const char*const resultType = "Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
124 const char*const ppData = "preparePersonalizationData";
125 const char*const ppDataType = "Ljava/lang/String;";
126} // namespace jniInitializeResult
127
129 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/PersonalizationResult";
130 const char*const sig = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;Ljava/lang/String;)V";
131 const char*const init = "<init>";
132 const char*const result = "result";
133 const char*const resultType = "Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
134 const char*const initPINData = "initPIN";
135 const char*const initPINDataType = "Ljava/lang/String;";
136} // namespace jniPersonalizationResult
137
139 const char*const path = "de/bundesdruckerei/android/eid_applet_service_lib/ServiceInformationResult";
140 const char*const sig = "(Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;Lde/bundesdruckerei/android/eid_applet_service_lib/SmartEidType;Ljava/lang/String;Ljava/lang/String;)V";
141 const char*const init = "<init>";
142 const char*const result = "result";
143 const char*const resultType = "Lde/bundesdruckerei/android/eid_applet_service_lib/ServiceResult;";
144 const char*const eidType = "type";
145 const char*const eidTypeType = "Lde/bundesdruckerei/android/eid_applet_service_lib/SmartEidType;";
146 const char*const challengeData = "challengeType";
147 const char*const challengeDataType = "Ljava/lang/String;";
148 const char*const libVersionName = "libVersionName";
149 const char*const libVersionNameType = "Ljava/lang/String;";
150} // namespace jniServiceInformationResult
151
152namespace jniUtils {
153 std::string getString(JNIEnv* env, const jstring& dataJString);
154 bool exceptionCheck(JNIEnv* env);
155 jclass findClass(JNIEnv* env, jobject applicationContext, const char* className);
156
157 template<typename T>
158 void deleteLocalRef(JNIEnv* env, T*& ref) {
159 if (ref && env) {
160 env->DeleteLocalRef(ref);
161 ref = nullptr;
162 }
163 }
164
165
166 template<typename T>
167 void deleteGlobalRef(JNIEnv* env, T*& ref) {
168 if (ref && env) {
169 env->DeleteGlobalRef(ref);
170 ref = nullptr;
171 }
172 }
173
174
175} // namespace jniUtils
176
177namespace appletUtils {
178
180
182
183} // namespace appletUtils
EidServiceResult
Definition eid_applet_results.h:92
EidSupportStatus
Definition eid_applet_results.h:58
#define T(v)
Definition http_parser.cpp:237
Definition eid_applet_utils.h:177
EidSupportStatus getEidSupportStatus(int value)
Definition eid_applet_utils.cpp:79
EidServiceResult getEidServiceResult(int value)
Definition eid_applet_utils.cpp:58
Definition eid_applet_utils.h:88
const char *const sigGetValue
Definition eid_applet_utils.h:92
const char *const path
Definition eid_applet_utils.h:89
const char *const sigGetByValue
Definition eid_applet_utils.h:90
const char *const getValue
Definition eid_applet_utils.h:93
const char *const getByValue
Definition eid_applet_utils.h:91
Definition eid_applet_utils.h:96
const char *const sig
Definition eid_applet_utils.h:98
const char *const path
Definition eid_applet_utils.h:97
const char *const result
Definition eid_applet_utils.h:101
const char *const init
Definition eid_applet_utils.h:99
const char *const statusType
Definition eid_applet_utils.h:105
const char *const resultType
Definition eid_applet_utils.h:102
const char *const status
Definition eid_applet_utils.h:104
Definition eid_applet_utils.h:108
const char *const getByValue
Definition eid_applet_utils.h:113
const char *const sig
Definition eid_applet_utils.h:111
const char *const getValue
Definition eid_applet_utils.h:115
const char *const sigGetValue
Definition eid_applet_utils.h:114
const char *const path
Definition eid_applet_utils.h:109
const char *const init
Definition eid_applet_utils.h:110
const char *const sigGetByValue
Definition eid_applet_utils.h:112
Definition eid_applet_utils.h:58
const char *const sig
Definition eid_applet_utils.h:60
const char *const result
Definition eid_applet_utils.h:62
const char *const dataType
Definition eid_applet_utils.h:65
const char *const path
Definition eid_applet_utils.h:59
const char *const data
Definition eid_applet_utils.h:64
const char *const init
Definition eid_applet_utils.h:61
const char *const resultType
Definition eid_applet_utils.h:63
Definition eid_applet_utils.h:118
const char *const sig
Definition eid_applet_utils.h:120
const char *const ppDataType
Definition eid_applet_utils.h:125
const char *const ppData
Definition eid_applet_utils.h:124
const char *const result
Definition eid_applet_utils.h:122
const char *const resultType
Definition eid_applet_utils.h:123
const char *const path
Definition eid_applet_utils.h:119
const char *const init
Definition eid_applet_utils.h:121
Definition eid_applet_utils.h:128
const char *const sig
Definition eid_applet_utils.h:130
const char *const path
Definition eid_applet_utils.h:129
const char *const init
Definition eid_applet_utils.h:131
const char *const resultType
Definition eid_applet_utils.h:133
const char *const initPINData
Definition eid_applet_utils.h:134
const char *const initPINDataType
Definition eid_applet_utils.h:135
const char *const result
Definition eid_applet_utils.h:132
Definition eid_applet_utils.h:138
const char *const result
Definition eid_applet_utils.h:142
const char *const resultType
Definition eid_applet_utils.h:143
const char *const eidType
Definition eid_applet_utils.h:144
const char *const eidTypeType
Definition eid_applet_utils.h:145
const char *const libVersionNameType
Definition eid_applet_utils.h:149
const char *const challengeData
Definition eid_applet_utils.h:146
const char *const libVersionName
Definition eid_applet_utils.h:148
const char *const sig
Definition eid_applet_utils.h:140
const char *const path
Definition eid_applet_utils.h:139
const char *const challengeDataType
Definition eid_applet_utils.h:147
const char *const init
Definition eid_applet_utils.h:141
Definition eid_applet_utils.h:68
const char *const sigGetByValue
Definition eid_applet_utils.h:72
const char *const sigGetValue
Definition eid_applet_utils.h:74
const char *const getByValue
Definition eid_applet_utils.h:73
const char *const sig
Definition eid_applet_utils.h:70
const char *const init
Definition eid_applet_utils.h:69
const char *const path
Definition eid_applet_utils.h:71
const char *const getValue
Definition eid_applet_utils.h:75
Definition eid_applet_utils.h:12
const char *const finalizePersonalizationMethod
Definition eid_applet_utils.h:48
const char *const path
Definition eid_applet_utils.h:14
const char *const getServiceInformationMethod
Definition eid_applet_utils.h:54
const char *const deleteSmartEidMethodSig
Definition eid_applet_utils.h:31
const char *const smartEidSupportInfoMethodSig
Definition eid_applet_utils.h:46
const char *const eIDStatusMethod
Definition eid_applet_utils.h:42
const char *const stdInit
Definition eid_applet_utils.h:15
const char *const sig
Definition eid_applet_utils.h:19
const char *const shutdownMethodSig
Definition eid_applet_utils.h:22
const char *const performPersonalizationMethod
Definition eid_applet_utils.h:36
const char *const releaseAppletConnectionMethod
Definition eid_applet_utils.h:39
const char *const initializePersonalizationMethodSig
Definition eid_applet_utils.h:34
const char *const performAPDUCommandMethod
Definition eid_applet_utils.h:24
const char *const finalizePersonalizationMethodSig
Definition eid_applet_utils.h:49
const char *const init
Definition eid_applet_utils.h:18
const char *const deletePersonalizationMethod
Definition eid_applet_utils.h:51
const char *const installSmartEidMethodSig
Definition eid_applet_utils.h:28
const char *const installSmartEidMethod
Definition eid_applet_utils.h:27
const char *const performPersonalizationMethodSig
Definition eid_applet_utils.h:37
const char *const smartEidSupportInfo
Definition eid_applet_utils.h:45
const char *const releaseAppletConnectionMethodSig
Definition eid_applet_utils.h:40
const char *const getServiceInformationMethodSig
Definition eid_applet_utils.h:55
const char *const performAPDUCommandMethodSig
Definition eid_applet_utils.h:25
const char *const initializePersonalizationMethod
Definition eid_applet_utils.h:33
const char *const deleteSmartEidMethod
Definition eid_applet_utils.h:30
const char *const shutdownMethod
Definition eid_applet_utils.h:21
const char *const deletePersonalizationMethodSig
Definition eid_applet_utils.h:52
const char *const eIDStatusMethodSig
Definition eid_applet_utils.h:43
Definition eid_applet_utils.h:78
const char *const path
Definition eid_applet_utils.h:81
const char *const sigGetValue
Definition eid_applet_utils.h:84
const char *const init
Definition eid_applet_utils.h:79
const char *const getValue
Definition eid_applet_utils.h:85
const char *const sig
Definition eid_applet_utils.h:80
const char *const getByValue
Definition eid_applet_utils.h:83
const char *const sigGetByValue
Definition eid_applet_utils.h:82
Definition eid_applet_utils.h:152
jclass findClass(JNIEnv *env, jobject applicationContext, const char *className)
Definition eid_applet_utils.cpp:37
void deleteLocalRef(JNIEnv *env, T *&ref)
Definition eid_applet_utils.h:158
std::string getString(JNIEnv *env, const jstring &dataJString)
Definition eid_applet_utils.cpp:10
bool exceptionCheck(JNIEnv *env)
Definition eid_applet_utils.cpp:22
void deleteGlobalRef(JNIEnv *env, T *&ref)
Definition eid_applet_utils.h:167