github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/wasm/client/utils/client_adapter.go (about) 1 package utils 2 3 import ( 4 "net/http" 5 6 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/context" 7 clientCtx "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/context" 8 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/server" 9 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 10 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types/rest" 11 authUtils "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/client/utils" 12 "github.com/spf13/cobra" 13 "github.com/spf13/pflag" 14 ) 15 16 var ( 17 ClientContextKey = sdk.ContextKey("client.context") 18 ServerContextKey = sdk.ContextKey("server.context") 19 ) 20 21 func GetClientContextFromCmd(cmd *cobra.Command) clientCtx.CLIContext { 22 // TODO need cdc like context.NewCLIContext().WithCodec(cdc) 23 if v := cmd.Context().Value(ClientContextKey); v != nil { 24 clientCtxPtr := v.(*context.CLIContext) 25 return *clientCtxPtr 26 } 27 return context.NewCLIContext() 28 } 29 30 func GetServerContextFromCmd(cmd *cobra.Command) server.Context { 31 // TODO need real server.context 32 if v := cmd.Context().Value(ServerContextKey); v != nil { 33 clientCtxPtr := v.(*server.Context) 34 return *clientCtxPtr 35 } 36 ctx := server.NewDefaultContext() 37 return *ctx 38 } 39 40 func GetClientQueryContext(cmd *cobra.Command) (clientCtx.CLIContext, error) { 41 // TODO need cdc like context.NewCLIContext().WithCodec(cdc) 42 if v := cmd.Context().Value(ClientContextKey); v != nil { 43 clientCtxPtr := v.(*context.CLIContext) 44 return *clientCtxPtr, nil 45 } 46 return context.NewCLIContext(), nil 47 } 48 49 func GetClientTxContext(cmd *cobra.Command) (clientCtx.CLIContext, error) { 50 // TODO need cdc like context.NewCLIContext().WithCodec(cdc) 51 if v := cmd.Context().Value(ClientContextKey); v != nil { 52 clientCtxPtr := v.(*context.CLIContext) 53 return *clientCtxPtr, nil 54 } 55 return context.NewCLIContext(), nil 56 } 57 58 func GenerateOrBroadcastTxCLI(cliCtx clientCtx.CLIContext, flagSet *pflag.FlagSet, msgs ...sdk.Msg) error { 59 //TODO need cmd and cdc 60 //inBuf := bufio.NewReader(cmd.InOrStdin()) 61 //txBldr := auth.NewTxBuilderFromCLI(inBuf).WithTxEncoder(authUtils.GetTxEncoder(cdc)) 62 //if cliCtx.GenerateOnly { 63 // return authUtils.PrintUnsignedStdTx(txBldr, cliCtx, msgs) 64 //} 65 // 66 //return authUtils.CompleteAndBroadcastTxCLI(txBldr, cliCtx, msgs) 67 return nil 68 } 69 70 func WriteGeneratedTxResponse( 71 clientCtx clientCtx.CLIContext, w http.ResponseWriter, br rest.BaseReq, msgs ...sdk.Msg, 72 ) { 73 authUtils.WriteGenerateStdTxResponse(w, clientCtx, br, msgs) 74 }