#ifndef LCB_CLPROVIDER_HTTP_H
#define LCB_CLPROVIDER_HTTP_H
#include "config.h"
#include "hostlist.h"
#include "simplestring.h"
#include "clconfig.h"
#include <lcbht/lcbht.h>
#define REQBUCKET_COMPAT_FMT "GET /pools/default/bucketsStreaming/%s HTTP/1.1\r\n"
#define REQBUCKET_TERSE_FMT "GET /pools/default/bs/%s HTTP/1.1\r\n"
#define REQPOOLS_FMT "GET /pools/ HTTP/1.1\r\n"
#define HOSTHDR_FMT "Host: %s:%s\r\n"
#define AUTHDR_FMT "Authorization: Basic %s\r\n"
#define LAST_HTTP_HEADER "X-Libcouchbase: " LCB_VERSION_STRING "\r\n"
#define CONFIG_DELIMITER "\n\n\n\n"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct clprovider_http_st {
clconfig_provider base;
lcbio_pCONNSTART creq;
lcbio_CTX *ioctx;
lcbht_pPARSER htp;
char request_buf[1024];
lcbio_pTIMER disconn_timer;
lcbio_pTIMER io_timer;
lcbio_pTIMER as_reconnect;
hostlist_t nodes;
clconfig_info *current_config;
clconfig_info *last_parsed;
int generation;
int try_nexturi;
lcb_HTCONFIG_URLTYPE uritype;
} http_provider;
#ifdef __cplusplus
}
#endif
#endif