Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,13 @@ jobs:
uses: actions/checkout@v2

- name: API sprawl check
run: ./cicd/scripts/hack/check_api_growth.sh
run: |
if ./cicd/scripts/hack/check_api_growth.sh; then
echo "API sprawl check passed"
else
echo "API sprawl check failed - please review for details"
exit 1
fi

- name: Setup system dependencies
run: |
Expand Down
9 changes: 9 additions & 0 deletions anysdk/addressable.go
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,15 @@ func newAddressableServerVariable(name string, s Schema, isRequired bool) Addres
}
}

func newAddressableContextVariable(name string, s Schema, isRequired bool) Addressable {
return &namedSchema{
s: s,
name: name,
location: LocationContext,
isRequired: isRequired,
}
}

type Addressable interface {
ConditionIsValid(lhs string, rhs interface{}) bool
GetLocation() string
Expand Down
33 changes: 23 additions & 10 deletions anysdk/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import (
"github.com/stackql/any-sdk/pkg/client"
"github.com/stackql/any-sdk/pkg/dto"
"github.com/stackql/any-sdk/pkg/internaldto"
"github.com/stackql/any-sdk/pkg/latetranslator"
"github.com/stackql/any-sdk/pkg/netutils"
"github.com/stackql/any-sdk/pkg/requesttranslate"
)
Expand All @@ -24,12 +25,14 @@ var (
)

type anySdkHttpClient struct {
client *http.Client
client *http.Client
lateTranslator latetranslator.LateTranslator
}

func newAnySdkHttpClient(client *http.Client) client.AnySdkClient {
return &anySdkHttpClient{
client: client,
client: client,
lateTranslator: latetranslator.NewNaiveLateTranslator(),
}
}

Expand Down Expand Up @@ -120,7 +123,11 @@ func (hc *anySdkHttpClient) Do(designation client.AnySdkDesignation, argList cli
if !isHttpRequest {
return nil, fmt.Errorf("could not cast first argument to http.Request")
}
httpResponse, httpResponseErr := hc.client.Do(httpReq)
translatedRequest, translationErr := hc.lateTranslator.Translate(httpReq)
if translationErr != nil {
return nil, translationErr
}
httpResponse, httpResponseErr := hc.client.Do(translatedRequest)
if httpResponseErr != nil {
return nil, httpResponseErr
}
Expand All @@ -129,19 +136,25 @@ func (hc *anySdkHttpClient) Do(designation client.AnySdkDesignation, argList cli
}

type anySdkHTTPClientConfigurator struct {
runtimeCtx dto.RuntimeCtx
authUtil auth_util.AuthUtility
providerName string
runtimeCtx dto.RuntimeCtx
authUtil auth_util.AuthUtility
providerName string
defaultClient *http.Client
}

func NewAnySdkClientConfigurator(
rtCtx dto.RuntimeCtx,
provName string,
defaultClient *http.Client,
) client.AnySdkClientConfigurator {
if defaultClient == nil {
defaultClient = http.DefaultClient
}
return &anySdkHTTPClientConfigurator{
runtimeCtx: rtCtx,
authUtil: auth_util.NewAuthUtility(),
providerName: provName,
runtimeCtx: rtCtx,
authUtil: auth_util.NewAuthUtility(defaultClient),
providerName: provName,
defaultClient: defaultClient,
}
}

Expand Down Expand Up @@ -246,7 +259,7 @@ func (cc *anySdkHTTPClientConfigurator) Auth(
}
return newAnySdkHttpClient(httpClient), nil
case dto.AuthNullStr:
httpClient := netutils.GetHTTPClient(cc.runtimeCtx, http.DefaultClient)
httpClient := netutils.GetHTTPClient(cc.runtimeCtx, cc.defaultClient)
return newAnySdkHttpClient(httpClient), nil
}
return nil, fmt.Errorf("could not infer auth type")
Expand Down
Loading
Loading