Reverted change made to vendored thrift library which caused some issues when vendoring gorealis itself. Added a workaround to overcome the default httpPostClient in the thrift library defaulting to headers for the thrift JSON protocol
This commit is contained in:
parent
8f505815d5
commit
cb6100e690
2 changed files with 8 additions and 3 deletions
|
@ -31,6 +31,8 @@ import (
|
||||||
"github.com/rdelval/gorealis/response"
|
"github.com/rdelval/gorealis/response"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const VERSION = "1.0.4"
|
||||||
|
|
||||||
type Realis interface {
|
type Realis interface {
|
||||||
AbortJobUpdate(updateKey aurora.JobUpdateKey, message string) (*aurora.Response, error)
|
AbortJobUpdate(updateKey aurora.JobUpdateKey, message string) (*aurora.Response, error)
|
||||||
AddInstances(instKey aurora.InstanceKey, count int32) (*aurora.Response, error)
|
AddInstances(instKey aurora.InstanceKey, count int32) (*aurora.Response, error)
|
||||||
|
@ -225,6 +227,7 @@ func newTJSONConfig(url string, timeoutms int) (*RealisConfig, error) {
|
||||||
|
|
||||||
httpTrans := (trans).(*thrift.THttpClient)
|
httpTrans := (trans).(*thrift.THttpClient)
|
||||||
httpTrans.SetHeader("Content-Type", "application/x-thrift")
|
httpTrans.SetHeader("Content-Type", "application/x-thrift")
|
||||||
|
httpTrans.SetHeader("User-Agent", "GoRealis v"+VERSION)
|
||||||
|
|
||||||
return &RealisConfig{transport: trans, protoFactory: thrift.NewTJSONProtocolFactory()}, nil
|
return &RealisConfig{transport: trans, protoFactory: thrift.NewTJSONProtocolFactory()}, nil
|
||||||
}
|
}
|
||||||
|
@ -237,9 +240,11 @@ func newTBinaryConfig(url string, timeoutms int) (*RealisConfig, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
httpTrans := (trans).(*thrift.THttpClient)
|
httpTrans := (trans).(*thrift.THttpClient)
|
||||||
|
httpTrans.DelHeader("Content-Type") // Workaround for using thrift HttpPostClient
|
||||||
|
|
||||||
httpTrans.SetHeader("Accept", "application/vnd.apache.thrift.binary")
|
httpTrans.SetHeader("Accept", "application/vnd.apache.thrift.binary")
|
||||||
httpTrans.SetHeader("Content-Type", "application/vnd.apache.thrift.binary")
|
httpTrans.SetHeader("Content-Type", "application/vnd.apache.thrift.binary")
|
||||||
httpTrans.SetHeader("User-Agent", "GoRealis v1.0.4")
|
httpTrans.SetHeader("User-Agent", "GoRealis v"+VERSION)
|
||||||
|
|
||||||
return &RealisConfig{transport: trans, protoFactory: thrift.NewTBinaryProtocolFactoryDefault()}, nil
|
return &RealisConfig{transport: trans, protoFactory: thrift.NewTBinaryProtocolFactoryDefault()}, nil
|
||||||
|
|
||||||
|
|
4
vendor/git.apache.org/thrift.git/lib/go/thrift/http_client.go
generated
vendored
4
vendor/git.apache.org/thrift.git/lib/go/thrift/http_client.go
generated
vendored
|
@ -103,7 +103,7 @@ func NewTHttpClientWithOptions(urlstr string, options THttpClientOptions) (TTran
|
||||||
if client == nil {
|
if client == nil {
|
||||||
client = DefaultHttpClient
|
client = DefaultHttpClient
|
||||||
}
|
}
|
||||||
httpHeader := map[string][]string{}
|
httpHeader := map[string][]string{"Content-Type": []string{"application/x-thrift"}}
|
||||||
return &THttpClient{client: client, response: response, url: parsedURL, header: httpHeader}, nil
|
return &THttpClient{client: client, response: response, url: parsedURL, header: httpHeader}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ func NewTHttpPostClientWithOptions(urlstr string, options THttpClientOptions) (T
|
||||||
if client == nil {
|
if client == nil {
|
||||||
client = DefaultHttpClient
|
client = DefaultHttpClient
|
||||||
}
|
}
|
||||||
httpHeader := map[string][]string{}
|
httpHeader := map[string][]string{"Content-Type": []string{"application/x-thrift"}}
|
||||||
return &THttpClient{client: client, url: parsedURL, requestBuffer: bytes.NewBuffer(buf), header: httpHeader}, nil
|
return &THttpClient{client: client, url: parsedURL, requestBuffer: bytes.NewBuffer(buf), header: httpHeader}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue