github.com/jasonkeene/cli@v6.14.1-0.20160816203908-ca5715166dfb+incompatible/cf/commands/version.go (about)

     1  package commands
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/cloudfoundry/cli/cf"
     7  	"github.com/cloudfoundry/cli/cf/commandregistry"
     8  	"github.com/cloudfoundry/cli/cf/flags"
     9  	. "github.com/cloudfoundry/cli/cf/i18n"
    10  	"github.com/cloudfoundry/cli/cf/requirements"
    11  	"github.com/cloudfoundry/cli/cf/terminal"
    12  )
    13  
    14  type Version struct {
    15  	ui terminal.UI
    16  }
    17  
    18  func init() {
    19  	commandregistry.Register(&Version{})
    20  }
    21  
    22  func (cmd *Version) MetaData() commandregistry.CommandMetadata {
    23  	return commandregistry.CommandMetadata{
    24  		Name:        "version",
    25  		Description: T("Print the version"),
    26  		Usage: []string{
    27  			"CF_NAME version",
    28  			"\n\n   ",
    29  			T("'{{.VersionShort}}' and '{{.VersionLong}}' are also accepted.", map[string]string{
    30  				"VersionShort": "cf -v",
    31  				"VersionLong":  "cf --version",
    32  			}),
    33  		},
    34  	}
    35  }
    36  
    37  func (cmd *Version) SetDependency(deps commandregistry.Dependency, pluginCall bool) commandregistry.Command {
    38  	cmd.ui = deps.UI
    39  	return cmd
    40  }
    41  
    42  func (cmd *Version) Requirements(requirementsFactory requirements.Factory, context flags.FlagContext) ([]requirements.Requirement, error) {
    43  	reqs := []requirements.Requirement{}
    44  	return reqs, nil
    45  }
    46  
    47  func (cmd *Version) Execute(context flags.FlagContext) error {
    48  	cmd.ui.Say(fmt.Sprintf("%s version %s-%s", cf.Name, cf.Version, cf.BuiltOnDate))
    49  	return nil
    50  }