httpsession.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile: httpsession.h,v $
00003                              -------------------
00004     cvs         : $Id: httpsession.h,v 1.4 2006/02/24 03:07:58 aquamaniac Exp $
00005     begin       : Mon Mar 01 2004
00006     copyright   : (C) 2004 by Martin Preuss
00007     email       : martin@libchipcard.de
00008 
00009  ***************************************************************************
00010  *          Please see toplevel file COPYING for license details           *
00011  ***************************************************************************/
00012 
00013 
00014 #ifndef AB_HTTPSESS_H
00015 #define AB_HTTPSESS_H
00016 
00017 #include <aqbanking/banking.h>
00018 
00019 #include <gwenhywfar/inherit.h>
00020 #include <gwenhywfar/misc.h>
00021 #include <gwenhywfar/url.h>
00022 #include <gwenhywfar/nl_http.h>
00023 
00031 
00036 #define AB_HTTPSESSION_FLAGS_ALLOW_REDIRECT 0x00000001
00037 #define AB_HTTPSESSION_FLAGS_REUSE          0x00000002
00038 #define AB_HTTPSESSION_FLAGS_SECURE_SSL     0x00000004
00039 
00040 #define AB_HTTPSESSION_DEFAULT_CONNECT_TIMEOUT  30
00041 #define AB_HTTPSESSION_DEFAULT_TRANSFER_TIMEOUT 60
00042 
00046 typedef struct AB_HTTPSESSION AB_HTTPSESSION;
00047 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_HTTPSESSION, AQBANKING_API)
00048 GWEN_LIST_FUNCTION_LIB_DEFS(AB_HTTPSESSION, AB_HttpSession, AQBANKING_API)
00049 
00050 
00055 AQBANKING_API 
00056 AB_HTTPSESSION *AB_HttpSession_new(AB_PROVIDER *pro, AB_USER *u);
00057 
00058 AQBANKING_API 
00059 void AB_HttpSession_free(AB_HTTPSESSION *hc);
00068 AQBANKING_API 
00069 AB_USER *AB_HttpSession_GetUser(const AB_HTTPSESSION *hc);
00070 
00071 AQBANKING_API 
00072 AB_PROVIDER *AB_HttpSession_GetProvider(const AB_HTTPSESSION *hc);
00081 AQBANKING_API 
00082 GWEN_TYPE_UINT32 AB_HttpSession_GetSessionId(const AB_HTTPSESSION *hc);
00083 
00084 
00085 AQBANKING_API GWEN_NETLAYER_HTTP_VERSION
00086 AB_HttpSession_GetHttpVersion(const AB_HTTPSESSION *hc);
00087 
00088 AQBANKING_API 
00089 void AB_HttpSession_SetHttpVersion(AB_HTTPSESSION *hc,
00090                                    GWEN_NETLAYER_HTTP_VERSION v);
00091 
00092 AQBANKING_API 
00093 GWEN_TYPE_UINT32 AB_HttpSession_GetFlags(const AB_HTTPSESSION *hc);
00094 
00095 AQBANKING_API 
00096 void AB_HttpSession_SetFlags(AB_HTTPSESSION *hc, GWEN_TYPE_UINT32 f);
00097 
00098 AQBANKING_API 
00099 void AB_HttpSession_AddFlags(AB_HTTPSESSION *hc, GWEN_TYPE_UINT32 f);
00100 
00101 AQBANKING_API 
00102 void AB_HttpSession_SubFlags(AB_HTTPSESSION *hc, GWEN_TYPE_UINT32 f);
00103 
00104 AQBANKING_API 
00105 int AB_HttpSession_GetConnectTimeout(const AB_HTTPSESSION *hc);
00106 
00107 AQBANKING_API 
00108 void AB_HttpSession_SetConnectTimeout(AB_HTTPSESSION *hc, int i);
00109 
00110 AQBANKING_API 
00111 int AB_HttpSession_GetTransferTimeout(const AB_HTTPSESSION *hc);
00112 
00113 AQBANKING_API 
00114 void AB_HttpSession_SetTransferTimeout(AB_HTTPSESSION *hc, int i);
00123 AQBANKING_API 
00124 int AB_HttpSession_Open(AB_HTTPSESSION *hc);
00125 
00126 AQBANKING_API 
00127 void AB_HttpSession_Close(AB_HTTPSESSION *hc);
00128 
00129 AQBANKING_API 
00130 int AB_HttpSession_SendRequest(AB_HTTPSESSION *hc,
00131                                const char *command,
00132                                const GWEN_URL *url,
00133                                GWEN_DB_NODE *dbSendHeader,
00134                                const char *pSendBody,
00135                                int lSendBody,
00136                                GWEN_BUFFER *recvBuf);
00140  /* defgroup */
00141 
00142 
00143 
00144 #endif
00145 

Generated on Tue Apr 10 19:04:09 2007 for aqbanking by  doxygen 1.4.7