compile insert ps_HTTPClient_Equates
/* 
   ** Copyright (C) 2012-2021 Revelation Software Inc. All Rights Reserved **
   
   Author   : Wile C Coyote - Super Genius
   Date     : June 2019
   Purpose  : Constants for working with PS HTTPCLIENT object structures
   
   
   Comments
   ========
   
   
   Amended  Date        Reason
   =======  ====        ======
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _PS_HTTPCLIENT_EQUATES_
#define _PS_HTTPCLIENT_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   $insert msWin_WinInet_Equates
   
   // HTTPClients are basically derived STATIC controls so most STATIC 
   // constants apply here as well 
   $insert ps_Static_Equates
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   // PS ExStyle Equates
   equ PSSX_HCL_ASYNCMODE$              to 0x00000001              ; // ASYNCMODE property
   equ PSSX_HCL_WORKOFFLINE$            to 0x00000002              ; // WORKOFFLINE property
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
   
   // SYSREPOSWINS structure overrides
   equ POS_HCL_VERB$                    to POS_TEXT_1$             ; // VERB property
   equ POS_HCL_URL$                     to POS_TEXT_2$             ; // URL property
   equ POS_HCL_PORT$                    to POS_TEXT_3$             ; // PORT property
   equ POS_HCL_USERAGENT$               to POS_TEXT_4$             ; // USERAGENT property
   equ POS_HCL_CREDENTIALS$             to POS_TEXT_5$             ; // USERNAME/PASSWORD property <0,0,1> and <0,0,2>
   equ POS_HCL_REFERRER$                to POS_TEXT_6$             ; // REFERRER property
   equ POS_HCL_CONNINFO$                to POS_TEXT_7$             ; // ACCESSTYPE/REQUESTOPTIONS/TIMEOUT
   equ POS_HCL_ACCEPTTYPES$             to POS_TEXT_8$             ; // ACCEPTTYPES property
   equ POS_HCL_REQHEADERS$              to POS_TEXT_9$             ; // REQUESTHEADERS property
   equ POS_HCL_PROXYNAMES$              to POS_TEXT_10$            ; // PROXYNAMES property
   equ POS_HCL_PROXYBYPASSNAMES$        to POS_TEXT_11$            ; // PROXYBYPASSNAMES property
   equ POS_HCL_RESPONSEFILE$            to POS_TEXT_12$            ; // RESPONSEFILE property
   
   // SYSREPOSWINEXES structure overrides
   equ PSPOS_HCL_VERB$                  to PSPOS_TEXT_1$           ; // VERB property
   equ PSPOS_HCL_URL$                   to PSPOS_TEXT_2$           ; // URL property
   equ PSPOS_HCL_PORT$                  to PSPOS_TEXT_3$           ; // PORT property
   equ PSPOS_HCL_USERAGENT$             to PSPOS_TEXT_4$           ; // USERAGENT property
   equ PSPOS_HCL_CREDENTIALS$           to PSPOS_TEXT_5$           ; // USERNAME/PASSWORD property <0,0,1> and <0,0,2>
   equ PSPOS_HCL_REFERRER$              to PSPOS_TEXT_6$           ; // REFERRER property
   equ PSPOS_HCL_CONNINFO$              to PSPOS_TEXT_7$           ; // ACCESSTYPE/REQUESTOPTIONS/TIMEOUT
   equ PSPOS_HCL_ACCEPTTYPES$           to PSPOS_TEXT_8$           ; // ACCEPTTYPES property
   equ PSPOS_HCL_REQHEADERS$            to PSPOS_TEXT_9$           ; // REQUESTHEADERS property
   equ PSPOS_HCL_PROXYNAMES$            to PSPOS_TEXT_10$          ; // PROXYNAMES property
   equ PSPOS_HCL_PROXYBYPASSNAMES$      to PSPOS_TEXT_11$          ; // PROXYBYPASSNAMES property
   equ PSPOS_HCL_RESPONSEFILE$          to PSPOS_TEXT_12$          ; // RESPONSEFILE property

   ////////////////////////////////////////////////////////////////////////////

   // ConnInfo field (POS_HCL_CONNINFO$, PSPOS_HCL_CONNINFO$)
   //
   //    <0,0,1> AccessType
   //    <0,0,2> RequestOptions
   //    <0,0,3> Timeout
   equ PS_HCL_CI_POS_ACCESSTYPE$       to 1
   equ PS_HCL_CI_POS_REQUESTOPTIONS$   to 2
   equ PS_HCL_CI_POS_TIMEOUT$          to 3
   
   ////////////////////////////////////////////////////////////////////////////
   
   // Credentials field (POS_HCL_CREDENTIALS$, PSPOS_HCL_CREDENTIALS$)
   equ PS_HCL_CD_POS_USERNAME$         to 1
   equ PS_HCL_CD_POS_PASSWORD$         to 2
   equ PS_HCL_CD_POS_PROXYUSERNAME$    to 3
   equ PS_HCL_CD_POS_PROXYPASSWORD$    to 4
   
///////////////////////////////////////////////////////////////////////////////

   // READYSTATE property
   equ PS_HCL_RS_UNSENT$               to 0
   equ PS_HCL_RS_OPENED$               to 1
   equ PS_HCL_RS_HEADERS_RECEIVED$     to 2
   equ PS_HCL_RS_LOADING$              to 3
   equ PS_HCL_RS_DONE$                 to 4
   
///////////////////////////////////////////////////////////////////////////////

   // RESPONSESTATUS property
   equ PS_HCL_RSPSTAT_POS_CODE$       to 1
   equ PS_HCL_RSPSTAT_POS_TEXT$       to 2
   equ PS_HCL_RSPSTAT_POS_CNTLEN$     to 3

///////////////////////////////////////////////////////////////////////////////

   // TIMEOUT property
   equ PS_HCL_DFLT_TIMEOUT$            to ( 3 * 60 * 1000 )  ; // 180 seconds or 3 mins...
   equ PS_HCL_MIN_TIMEOUT$             to 0                  ; // to infinity and beyond!
   equ PS_HCL_MAX_TIMEOUT$             to ( 60 * 60 * 1000 ) ; // 1 hour

///////////////////////////////////////////////////////////////////////////////

   // VERB property
   equ PS_HCL_DFLT_VERB$               to "GET"
   equ PS_HCL_VERBS$                   to "GET"     : @fm : |
                                          "HEAD"    : @fm : |
                                          "POST"    : @fm : |
                                          "PUT"     : @fm : |
                                          "DELETE"  : @fm : |
                                          "CONNECT" : @fm : |
                                          "OPTIONS" : @fm : |
                                          "TRACE"   : @fm  :|
                                          "PATCH"
                                          
///////////////////////////////////////////////////////////////////////////////

   equ PS_HSL_HTTP_STATUS_TIMEOUT$    to 408 ; // This is "real"
   equ PS_HSL_HTTP_STATUS_USERABORT$  to 477 ; // We made this up
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

