//line /Users/dhollim/workspaces/Quickbeam/src/StarfruitQuickbeamCLI/src/golang.a2z.com/StarfruitQuickbeamCLI/StarfruitQuickbeamCLI.go:1
package main

import (
	"CoralGoClient/dialer"
	"CoralRPCGoSupport/rpcv1"
	"authv4"
	av4creds "authv4/credentials"
	quickbeam "com/amazon/quickbeamadmincoralservice"
	"crypto/tls"
	"fmt"

	"github.com/aws/aws-sdk-go/aws/credentials"
)

type SDKCredsWrapper struct {
	sdkcreds *credentials.Credentials
}

func (c *SDKCredsWrapper) Get() (av4creds.Value, error) {GoCover_0_643934613635656438333735.Count[0]++;
	creds, e := c.sdkcreds.Get()
	return av4creds.Value{creds.AccessKeyID, creds.SecretAccessKey, creds.SessionToken}, e
}

func main() {GoCover_0_643934613635656438333735.Count[1]++;

	creds := credentials.NewEnvCredentials()

	QuickbeamSigner := authv4.NewSignerWithCreds("us-east-1", "acm", &SDKCredsWrapper{creds}, nil)
	QuickbeamHost := "acm-internal.us-east-1.amazonaws.com"
	quickbeamCodec := rpcv1.New(QuickbeamHost, rpcv1.SetSignerV4(QuickbeamSigner))
	QuickbeamDialer, err := dialer.TLS(QuickbeamHost, 443, &tls.Config{
		InsecureSkipVerify: true,
	})
	if err != nil {GoCover_0_643934613635656438333735.Count[3]++;
		panic(fmt.Sprintf("Unable to set up TLS connection to QUICKBEAM: %s,", err))
	}
	GoCover_0_643934613635656438333735.Count[2]++;client := quickbeam.NewQuickbeamAdminCoralServiceClient(QuickbeamDialer, quickbeamCodec)
	fmt.Printf("%+v", client)
}

var GoCover_0_643934613635656438333735 = struct {
	Count     [4]uint32
	Pos       [3 * 4]uint32
	NumStmt   [4]uint16
} {
	Pos: [3 * 4]uint32{
		19, 22, 0x20039, // [0]
		24, 34, 0x10000d, // [1]
		37, 38, 0x1b0002, // [2]
		34, 35, 0x4f0010, // [3]
	},
	NumStmt: [4]uint16{
		2, // 0
		6, // 1
		2, // 2
		1, // 3
	},
}
