github.com/loomnetwork/gamechain@v0.0.0-20200406110549-36c47eb97a92/cli/cmd/delete_game_mode.go (about)

     1  package cmd
     2  
     3  import (
     4  	"encoding/json"
     5  	"fmt"
     6  	"github.com/loomnetwork/gamechain/types/zb/zb_calls"
     7  	"strings"
     8  
     9  	"github.com/loomnetwork/go-loom/auth"
    10  	"github.com/spf13/cobra"
    11  )
    12  
    13  var deleteGameModeCmdArgs struct {
    14  	ID     string
    15  }
    16  
    17  var deleteGameModeCmd = &cobra.Command{
    18  	Use:   "delete_game_mode",
    19  	Short: "delete game mode by id",
    20  	RunE: func(cmd *cobra.Command, args []string) error {
    21  		signer := auth.NewEd25519Signer(commonTxObjs.privateKey)
    22  		var req zb_calls.DeleteGameModeRequest
    23  
    24  		req.ID = deleteGameModeCmdArgs.ID
    25  
    26  		_, err := commonTxObjs.contract.Call("DeleteGameMode", &req, signer, nil)
    27  		if err != nil {
    28  			return err
    29  		}
    30  
    31  		switch strings.ToLower(rootCmdArgs.outputFormat) {
    32  		case "json":
    33  			output, err := json.Marshal(map[string]interface{}{"success": true})
    34  			if err != nil {
    35  				return err
    36  			}
    37  			fmt.Println(string(output))
    38  		default:
    39  			fmt.Printf("deleted game mode: %s\n", req.ID)
    40  		}
    41  
    42  		return nil
    43  	},
    44  }
    45  
    46  func init() {
    47  	rootCmd.AddCommand(deleteGameModeCmd)
    48  	deleteGameModeCmd.Flags().StringVar(&deleteGameModeCmdArgs.ID, "id", "", "id of the game mode")
    49  }