basecli cleanup

glide fix

int

int
This commit is contained in:
rigel rozanski 2017-05-01 03:05:54 -04:00 committed by Ethan Frey
parent 0fc1b98525
commit 4207275d18
3 changed files with 34 additions and 30 deletions

View File

@ -7,7 +7,10 @@ import (
"github.com/pkg/errors" "github.com/pkg/errors"
flag "github.com/spf13/pflag" flag "github.com/spf13/pflag"
"github.com/spf13/viper" "github.com/spf13/viper"
"github.com/tendermint/basecoin/state"
btypes "github.com/tendermint/basecoin/types" btypes "github.com/tendermint/basecoin/types"
keycmd "github.com/tendermint/go-crypto/cmd" keycmd "github.com/tendermint/go-crypto/cmd"
wire "github.com/tendermint/go-wire" wire "github.com/tendermint/go-wire"
lightclient "github.com/tendermint/light-client" lightclient "github.com/tendermint/light-client"
@ -20,7 +23,7 @@ type AccountPresenter struct{}
func (_ AccountPresenter) MakeKey(str string) ([]byte, error) { func (_ AccountPresenter) MakeKey(str string) ([]byte, error) {
res, err := hex.DecodeString(str) res, err := hex.DecodeString(str)
if err == nil { if err == nil {
res = append([]byte("base/a/"), res...) res = state.AccountKey(res)
} }
return res, err return res, err
} }
@ -41,21 +44,6 @@ func (_ BaseTxPresenter) ParseData(raw []byte) (interface{}, error) {
return tx, err return tx, err
} }
// SendTXReader allows us to create SendTx
type SendTxReader struct {
ChainID string
}
func (t SendTxReader) ReadTxJSON(data []byte) (interface{}, error) {
var tx btypes.SendTx
err := json.Unmarshal(data, &tx)
send := SendTx{
chainID: t.ChainID,
Tx: &tx,
}
return &send, errors.Wrap(err, "parse sendtx")
}
type SendTxMaker struct{} type SendTxMaker struct{}
func (m SendTxMaker) MakeReader() (lightclient.TxReader, error) { func (m SendTxMaker) MakeReader() (lightclient.TxReader, error) {
@ -72,7 +60,8 @@ type SendFlags struct {
} }
func (m SendTxMaker) Flags() (*flag.FlagSet, interface{}) { func (m SendTxMaker) Flags() (*flag.FlagSet, interface{}) {
fs := flag.NewFlagSet("foobar", flag.ContinueOnError) fs := flag.NewFlagSet("", flag.ContinueOnError)
fs.String("to", "", "Destination address for the bits") fs.String("to", "", "Destination address for the bits")
fs.String("amount", "", "Coins to send in the format <amt><coin>,<amt><coin>...") fs.String("amount", "", "Coins to send in the format <amt><coin>,<amt><coin>...")
fs.String("fee", "", "Coins for the transaction fee of the format <amt><coin>") fs.String("fee", "", "Coins for the transaction fee of the format <amt><coin>")
@ -81,6 +70,21 @@ func (m SendTxMaker) Flags() (*flag.FlagSet, interface{}) {
return fs, &SendFlags{} return fs, &SendFlags{}
} }
// SendTXReader allows us to create SendTx
type SendTxReader struct {
ChainID string
}
func (t SendTxReader) ReadTxJSON(data []byte) (interface{}, error) {
var tx btypes.SendTx
err := json.Unmarshal(data, &tx)
send := SendTx{
chainID: t.ChainID,
Tx: &tx,
}
return &send, errors.Wrap(err, "parse sendtx")
}
func (t SendTxReader) ReadTxFlags(flags interface{}) (interface{}, error) { func (t SendTxReader) ReadTxFlags(flags interface{}) (interface{}, error) {
data := flags.(*SendFlags) data := flags.(*SendFlags)
@ -134,7 +138,7 @@ func (t SendTxReader) ReadTxFlags(flags interface{}) (interface{}, error) {
return &send, nil return &send, nil
} }
/** copied from basecoin cli - put in common somewhere? **/ /** TODO copied from basecoin cli - put in common somewhere? **/
// Returns true for non-empty hex-string prefixed with "0x" // Returns true for non-empty hex-string prefixed with "0x"
func isHex(s string) bool { func isHex(s string) bool {

View File

@ -7,7 +7,6 @@ import (
keycmd "github.com/tendermint/go-crypto/cmd" keycmd "github.com/tendermint/go-crypto/cmd"
"github.com/tendermint/light-client/commands" "github.com/tendermint/light-client/commands"
"github.com/tendermint/light-client/commands/proofs" "github.com/tendermint/light-client/commands/proofs"
"github.com/tendermint/light-client/commands/proxy"
"github.com/tendermint/light-client/commands/seeds" "github.com/tendermint/light-client/commands/seeds"
"github.com/tendermint/light-client/commands/txs" "github.com/tendermint/light-client/commands/txs"
"github.com/tendermint/tmlibs/cli" "github.com/tendermint/tmlibs/cli"
@ -25,22 +24,23 @@ tmcli to work for any custom abci app.
`, `,
} }
func init() { func main() {
commands.AddBasicFlags(BaseCli) commands.AddBasicFlags(BaseCli)
// set up the various commands to use //initialize proofs and txs
BaseCli.AddCommand(keycmd.RootCmd)
BaseCli.AddCommand(commands.InitCmd)
BaseCli.AddCommand(seeds.RootCmd)
proofs.StatePresenters.Register("account", AccountPresenter{}) proofs.StatePresenters.Register("account", AccountPresenter{})
proofs.TxPresenters.Register("base", BaseTxPresenter{}) proofs.TxPresenters.Register("base", BaseTxPresenter{})
BaseCli.AddCommand(proofs.RootCmd)
txs.Register("send", SendTxMaker{}) txs.Register("send", SendTxMaker{})
BaseCli.AddCommand(txs.RootCmd)
BaseCli.AddCommand(proxy.RootCmd)
}
func main() { // set up the various commands to use
BaseCli.AddCommand(
keycmd.RootCmd,
commands.InitCmd,
seeds.RootCmd,
proofs.RootCmd,
txs.RootCmd,
)
cmd := cli.PrepareMainCmd(BaseCli, "BC", os.ExpandEnv("$HOME/.basecli")) cmd := cli.PrepareMainCmd(BaseCli, "BC", os.ExpandEnv("$HOME/.basecli"))
cmd.Execute() cmd.Execute()
} }

View File

@ -44,7 +44,7 @@ import:
- rpc/lib/types - rpc/lib/types
- types - types
- package: github.com/tendermint/tmlibs - package: github.com/tendermint/tmlibs
version: develop version: basecoin-cli
subpackages: subpackages:
- cli - cli
- common - common