MCPcopy Create free account
hub / github.com/cloudfoundry/cli / Execute

Method Execute

cf/commands/servicekey/delete_service_key.go:67–121  ·  view source on GitHub ↗
(c flags.FlagContext)

Source from the content-addressed store, hash-verified

65}
66
67func (cmd *DeleteServiceKey) Execute(c flags.FlagContext) error {
68 serviceInstanceName := c.Args()[0]
69 serviceKeyName := c.Args()[1]
70
71 if !c.Bool("f") {
72 if !cmd.ui.ConfirmDelete(T("service key"), serviceKeyName) {
73 return nil
74 }
75 }
76
77 cmd.ui.Say(T("Deleting key {{.ServiceKeyName}} for service instance {{.ServiceInstanceName}} as {{.CurrentUser}}...",
78 map[string]interface{}{
79 "ServiceKeyName": terminal.EntityNameColor(serviceKeyName),
80 "ServiceInstanceName": terminal.EntityNameColor(serviceInstanceName),
81 "CurrentUser": terminal.EntityNameColor(cmd.config.Username()),
82 }))
83
84 serviceInstance, err := cmd.serviceRepo.FindInstanceByName(serviceInstanceName)
85 if err != nil {
86 cmd.ui.Ok()
87 cmd.ui.Warn(T("Service instance {{.ServiceInstanceName}} does not exist.",
88 map[string]interface{}{
89 "ServiceInstanceName": serviceInstanceName,
90 }))
91 return nil
92 }
93
94 serviceKey, err := cmd.serviceKeyRepo.GetServiceKey(serviceInstance.GUID, serviceKeyName)
95 if err != nil || serviceKey.Fields.GUID == "" {
96 switch err.(type) {
97 case *errors.NotAuthorizedError:
98 cmd.ui.Say(T("No service key {{.ServiceKeyName}} found for service instance {{.ServiceInstanceName}}",
99 map[string]interface{}{
100 "ServiceKeyName": terminal.EntityNameColor(serviceKeyName),
101 "ServiceInstanceName": terminal.EntityNameColor(serviceInstanceName)}))
102 return nil
103 default:
104 cmd.ui.Ok()
105 cmd.ui.Warn(T("Service key {{.ServiceKeyName}} does not exist for service instance {{.ServiceInstanceName}}.",
106 map[string]interface{}{
107 "ServiceKeyName": serviceKeyName,
108 "ServiceInstanceName": serviceInstanceName,
109 }))
110 return nil
111 }
112 }
113
114 err = cmd.serviceKeyRepo.DeleteServiceKey(serviceKey.Fields.GUID)
115 if err != nil {
116 return err
117 }
118
119 cmd.ui.Ok()
120 return nil
121}

Callers

nothing calls this directly

Calls 11

EntityNameColorFunction · 0.92
ArgsMethod · 0.65
BoolMethod · 0.65
ConfirmDeleteMethod · 0.65
SayMethod · 0.65
UsernameMethod · 0.65
FindInstanceByNameMethod · 0.65
OkMethod · 0.65
WarnMethod · 0.65
GetServiceKeyMethod · 0.65
DeleteServiceKeyMethod · 0.65

Tested by

no test coverage detected