github.com/loggregator/cli@v6.33.1-0.20180224010324-82334f081791+incompatible/cf/configuration/pluginconfig/plugin_data.go (about) 1 package pluginconfig 2 3 import ( 4 "encoding/json" 5 6 "code.cloudfoundry.org/cli/plugin" 7 ) 8 9 type PluginData struct { 10 Plugins map[string]PluginMetadata 11 } 12 13 type PluginMetadata struct { 14 Location string 15 Version plugin.VersionType 16 Commands []plugin.Command 17 } 18 19 func NewData() *PluginData { 20 return &PluginData{ 21 Plugins: make(map[string]PluginMetadata), 22 } 23 } 24 25 func (pd *PluginData) JSONMarshalV3() (output []byte, err error) { 26 return json.MarshalIndent(pd, "", " ") 27 } 28 29 func (pd *PluginData) JSONUnmarshalV3(input []byte) (err error) { 30 return json.Unmarshal(input, pd) 31 }