github.com/jasonkeene/cli@v6.14.1-0.20160816203908-ca5715166dfb+incompatible/cf/configuration/coreconfig/config_data.go (about) 1 package coreconfig 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 DopplerEndPoint string 28 UaaEndpoint string 29 RoutingAPIEndpoint string 30 AccessToken string 31 SSHOAuthClient string 32 RefreshToken string 33 OrganizationFields models.OrganizationFields 34 SpaceFields models.SpaceFields 35 SSLDisabled bool 36 AsyncTimeout uint 37 Trace string 38 ColorEnabled string 39 Locale string 40 PluginRepos []models.PluginRepo 41 MinCLIVersion string 42 MinRecommendedCLIVersion string 43 } 44 45 func NewData() *Data { 46 return new(Data) 47 } 48 49 func (d *Data) JSONMarshalV3() ([]byte, error) { 50 d.ConfigVersion = 3 51 return json.MarshalIndent(d, "", " ") 52 } 53 54 func (d *Data) JSONUnmarshalV3(input []byte) error { 55 err := json.Unmarshal(input, d) 56 if err != nil { 57 return err 58 } 59 60 if d.ConfigVersion != 3 { 61 *d = Data{} 62 return nil 63 } 64 65 return nil 66 }