github.com/rakutentech/cli@v6.12.5-0.20151006231303-24468b65536e+incompatible/cf/requirements/login.go (about)

     1  package requirements
     2  
     3  import (
     4  	"github.com/cloudfoundry/cli/cf/configuration/core_config"
     5  	"github.com/cloudfoundry/cli/cf/terminal"
     6  )
     7  
     8  type LoginRequirement struct {
     9  	ui                     terminal.UI
    10  	config                 core_config.Reader
    11  	apiEndpointRequirement ApiEndpointRequirement
    12  }
    13  
    14  func NewLoginRequirement(ui terminal.UI, config core_config.Reader) LoginRequirement {
    15  	return LoginRequirement{ui, config, ApiEndpointRequirement{ui, config}}
    16  }
    17  
    18  func (req LoginRequirement) Execute() (success bool) {
    19  	if !req.apiEndpointRequirement.Execute() {
    20  		return false
    21  	}
    22  
    23  	if !req.config.IsLoggedIn() {
    24  		req.ui.Say(terminal.NotLoggedInText())
    25  		return false
    26  	}
    27  
    28  	return true
    29  }