class OpenEdge.Net.HTTP.ClientBuilder
	inherits OpenEdge.Net.HTTP.ConfigBuilder
 abstract:

	constructor public ClientBuilder ():
	end.

	define public static property Registry as OpenEdge.Net.HTTP.BuilderRegistry no-undo
		public get.
		private set.

	define protected property PROP_CLIENT_NAME as character no-undo
		protected get.

	define protected property PROP_CLIENT_VERSION as character no-undo
		protected get.

	define public abstract property Client as OpenEdge.Net.HTTP.IHttpClient no-undo
		public get.

	method public static OpenEdge.Net.HTTP.ClientBuilder Build ():
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder SetNumRetries ( piValue as integer):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder SetRetryPause ( pdValue as decimal):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder SetRequestTimeout ( pdValue as decimal):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder KeepCookies ( poCookieJar as OpenEdge.Net.HTTP.ICookieJar):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder KeepCookies ():
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder ViaProxy ( poProxyURI as OpenEdge.Net.URI):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder ViaProxy ( pcProxyURI as character):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder Named ( pcName as character, pcVersion as character):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder UsingLibrary ( poLibrary as OpenEdge.Net.HTTP.IHttpClientLibrary):
	end.

	method public OpenEdge.Net.HTTP.ClientBuilder UsingLogger ( poLogger as OpenEdge.Logging.ILogWriter):
	end.

	method protected OpenEdge.Net.HTTP.IHttpClientLibrary BuildLibrary ():
	end.

	method public static OpenEdge.Net.HTTP.IHttpClient DecorateClient ( poDecorationType as Progress.Lang.Class, poDecoratedClient as OpenEdge.Net.HTTP.IHttpClient):
	end.

end.
