github.com/asifdxtreme/cli@v6.1.3-0.20150123051144-9ead8700b4ae+incompatible/cf/configuration/core_config/config_data.go (about)

     1  package core_config
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	"github.com/cloudfoundry/cli/cf/models"
     7  )
     8  
     9  type AuthPromptType string
    10  
    11  const (
    12  	AuthPromptTypeText     AuthPromptType = "TEXT"
    13  	AuthPromptTypePassword AuthPromptType = "PASSWORD"
    14  )
    15  
    16  type AuthPrompt struct {
    17  	Type        AuthPromptType
    18  	DisplayName string
    19  }
    20  
    21  type Data struct {
    22  	ConfigVersion         int
    23  	Target                string
    24  	ApiVersion            string
    25  	AuthorizationEndpoint string
    26  	LoggregatorEndPoint   string
    27  	UaaEndpoint           string
    28  	AccessToken           string
    29  	RefreshToken          string
    30  	OrganizationFields    models.OrganizationFields
    31  	SpaceFields           models.SpaceFields
    32  	SSLDisabled           bool
    33  	AsyncTimeout          uint
    34  	Trace                 string
    35  	ColorEnabled          string
    36  	Locale                string
    37  }
    38  
    39  func NewData() (data *Data) {
    40  	data = new(Data)
    41  	return
    42  }
    43  
    44  func (d *Data) JsonMarshalV3() (output []byte, err error) {
    45  	d.ConfigVersion = 3
    46  	return json.MarshalIndent(d, "", "  ")
    47  }
    48  
    49  func (d *Data) JsonUnmarshalV3(input []byte) (err error) {
    50  	err = json.Unmarshal(input, d)
    51  	if err != nil {
    52  		return
    53  	}
    54  
    55  	if d.ConfigVersion != 3 {
    56  		*d = Data{}
    57  		return
    58  	}
    59  
    60  	return
    61  }