feat: add http in constructor (if required)

This commit is contained in:
Stefan Martinov 2018-12-20 12:02:41 +01:00
parent c18c777692
commit aeba882310
2 changed files with 15 additions and 2 deletions

View File

@ -26,6 +26,14 @@ func NewClient() Client {
return &bufferedClient{client: defaultHttpFactory(), handle: getHandleForEncoding(EncodingMsgpack)}
}
func NewClientWithHttpClient(client *http.Client) Client {
if client != nil {
return &bufferedClient{client: client, handle: getHandleForEncoding(EncodingMsgpack)}
} else {
return &bufferedClient{client: defaultHttpFactory(), handle: getHandleForEncoding(EncodingMsgpack)}
}
}
func newRequest(url string, contentType string, reader io.Reader) (r *http.Request, err error) {
request, errRequest := http.NewRequest("POST", url, reader)
if errRequest != nil {

9
go.go
View File

@ -436,12 +436,17 @@ func renderTSRPCServiceClients(services ServiceList, fullPackageName string, pac
}
func New` + interfaceName + `(url string, endpoint string) ` + interfaceName + ` {
return New` + interfaceName + `WithClient(url, "` + service.Endpoint + `", nil)
}
func New` + interfaceName + `WithClient(url string, endpoint string, client *http.Client) ` + interfaceName + ` {
return &` + clientName + `{
URL: url,
EndPoint: endpoint,
Client: gotsrpc.NewClient(),
Client: gotsrpc.NewClientWithHttpClient(client),
}
}`)
}`)
//Render Methods
g.l(`