00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef AH_USER_H
00014 #define AH_USER_H
00015
00016 #include <aqhbci/aqhbci.h>
00017 #include <gwenhywfar/misc.h>
00018 #include <gwenhywfar/list2.h>
00019
00020
00027
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031 typedef struct AH_USER AH_USER;
00032 GWEN_LIST2_FUNCTION_LIB_DEFS(AH_USER, AH_User, AQHBCI_API);
00033 #ifdef __cplusplus
00034 }
00035 #endif
00036
00037
00038 #include <gwenhywfar/db.h>
00039 #include <aqhbci/bank.h>
00040 #include <aqhbci/medium.h>
00041 #include <aqhbci/customer.h>
00042
00043
00044 #ifdef __cplusplus
00045 extern "C" {
00046 #endif
00047
00048
00049
00050 typedef enum {
00051 AH_UserStatusNew=0,
00052 AH_UserStatusEnabled,
00053 AH_UserStatusPending,
00054 AH_UserStatusDisabled,
00055 AH_UserStatusUnknown=999
00056 } AH_USER_STATUS;
00057
00058
00059
00060 AQHBCI_API
00061 AH_USER *AH_User_new(AH_BANK *b,
00062 const char *userId,
00063 AH_CRYPT_MODE cm,
00064 AH_MEDIUM *m);
00065
00066 AQHBCI_API
00067 void AH_User_Attach(AH_USER *u);
00068
00069 AQHBCI_API
00070 void AH_User_free(AH_USER *u);
00071
00072
00073 AQHBCI_API
00074 AH_USER_STATUS AH_User_GetStatus(const AH_USER *u);
00075
00076 AQHBCI_API
00077 void AH_User_SetStatus(AH_USER *u, AH_USER_STATUS i);
00078
00079 const char *AH_User_StatusName(AH_USER_STATUS st);
00080 AH_USER_STATUS AH_User_StatusFromName(const char *s);
00081
00082
00083 AQHBCI_API
00084 AH_MEDIUM *AH_User_GetMedium(const AH_USER *u);
00085
00086 AQHBCI_API
00087 AH_BANK *AH_User_GetBank(const AH_USER *u);
00088
00089 AQHBCI_API
00090 const char *AH_User_GetUserId(const AH_USER *u);
00091
00095 AQHBCI_API
00096 void AH_User_SetUserId(AH_USER *u, const char *s);
00097
00098 AQHBCI_API
00099 const char *AH_User_GetPeerId(const AH_USER *u);
00100
00101 AQHBCI_API
00102 void AH_User_SetPeerId(AH_USER *u, const char *s);
00103
00104 AQHBCI_API
00105 int AH_User_GetContextIdx(const AH_USER *u);
00106 AQHBCI_API
00107 void AH_User_SetContextIdx(AH_USER *u, int idx);
00108
00109
00110 AH_CRYPT_MODE AH_User_GetCryptMode(const AH_USER *u);
00111 void AH_User_SetCryptMode(AH_USER *u, AH_CRYPT_MODE m);
00112
00113
00114 AQHBCI_API
00115 AH_CUSTOMER *AH_User_FindCustomer(const AH_USER *u,
00116 const char *customerId);
00117
00118 AQHBCI_API
00119 AH_CUSTOMER_LIST2 *AH_User_GetCustomers(const AH_USER *u,
00120 const char *customerId);
00121
00122 AQHBCI_API
00123 const AH_BPD_ADDR *AH_User_GetAddress(const AH_USER *u);
00124 AQHBCI_API
00125 void AH_User_SetAddress(AH_USER *u, const AH_BPD_ADDR *a);
00126
00127
00128 AQHBCI_API
00129 int AH_User_AddCustomer(AH_USER *u, AH_CUSTOMER *cu);
00130
00131
00139 AQHBCI_API
00140 int AH_User_RemoveCustomer(AH_USER *u, AH_CUSTOMER *cu);
00141
00143
00144 #ifdef __cplusplus
00145 }
00146 #endif
00147
00148 #endif
00149
00150
00151
00152
00153
00154