sig
module Session :
sig
type oauth1_context = { token : string; secret : string; }
val token :
(GapiConversation.Session.oauth1_context, string) GapiLens.t
val secret :
(GapiConversation.Session.oauth1_context, string) GapiLens.t
type oauth2_context = {
oauth2_token : string;
refresh_token : string;
}
val oauth2_token :
(GapiConversation.Session.oauth2_context, string) GapiLens.t
val refresh_token :
(GapiConversation.Session.oauth2_context, string) GapiLens.t
type auth_context =
NoAuth
| ClientLogin of string
| OAuth1 of GapiConversation.Session.oauth1_context
| OAuth2 of GapiConversation.Session.oauth2_context
val no_auth :
(GapiConversation.Session.auth_context, unit option) GapiLens.t
val client_login :
(GapiConversation.Session.auth_context, string option) GapiLens.t
val oauth1 :
(GapiConversation.Session.auth_context,
GapiConversation.Session.oauth1_context option)
GapiLens.t
val oauth2 :
(GapiConversation.Session.auth_context,
GapiConversation.Session.oauth2_context option)
GapiLens.t
type t = {
curl : [ `Created ] GapiCurl.t;
config : GapiConfig.t;
auth : GapiConversation.Session.auth_context;
cookies : string list;
etag : string;
}
val curl :
(GapiConversation.Session.t, [ `Created ] GapiCurl.t) GapiLens.t
val config : (GapiConversation.Session.t, GapiConfig.t) GapiLens.t
val auth :
(GapiConversation.Session.t, GapiConversation.Session.auth_context)
GapiLens.t
val cookies : (GapiConversation.Session.t, string list) GapiLens.t
val etag : (GapiConversation.Session.t, string) GapiLens.t
end
val request :
?header_list:GapiCore.Header.t list ->
?post_data:GapiCore.PostData.t ->
?media_download:GapiMediaResource.download ->
GapiCore.HttpMethod.t ->
GapiConversation.Session.t ->
string ->
(GapiPipe.OcamlnetPipe.t ->
int -> GapiCore.Header.t list -> GapiConversation.Session.t -> 'a) ->
'a * GapiConversation.Session.t
val with_session :
?auth_context:GapiConversation.Session.auth_context ->
GapiConfig.t ->
[ `Initialized ] GapiCurl.t -> (GapiConversation.Session.t -> 'a) -> 'a
val with_curl :
?auth_context:GapiConversation.Session.auth_context ->
GapiConfig.t -> (GapiConversation.Session.t -> 'a) -> 'a
val read_all : ?auto_close:bool -> GapiPipe.OcamlnetPipe.t -> string
val parse_error :
GapiPipe.OcamlnetPipe.t -> int -> GapiConversation.Session.t -> 'a
exception ConversationException of string
type ('a, 'b) iter =
Done of 'b
| Continue of ('a -> ('a, 'b) GapiConversation.iter)
| Error of string
val loop : ('a -> ('a, 'b) GapiConversation.iter) -> 'a -> 'b
end