(c flags.FlagContext)
| 70 | return cmd |
| 71 | } |
| 72 | func (cmd *DeleteSpace) Execute(c flags.FlagContext) error { |
| 73 | var space models.Space |
| 74 | |
| 75 | spaceName := c.Args()[0] |
| 76 | orgName := c.String("o") |
| 77 | |
| 78 | if orgName == "" { |
| 79 | space = cmd.spaceReq.GetSpace() |
| 80 | |
| 81 | orgName = cmd.config.OrganizationFields().Name |
| 82 | } else { |
| 83 | org, err := cmd.orgRepo.FindByName(orgName) |
| 84 | if err != nil { |
| 85 | return err |
| 86 | } |
| 87 | |
| 88 | space, err = cmd.spaceRepo.FindByNameInOrg(spaceName, org.GUID) |
| 89 | if err != nil { |
| 90 | return err |
| 91 | } |
| 92 | } |
| 93 | |
| 94 | if !c.Bool("f") { |
| 95 | if !cmd.ui.ConfirmDelete(T("space"), spaceName) { |
| 96 | return nil |
| 97 | } |
| 98 | } |
| 99 | |
| 100 | cmd.ui.Say(T("Deleting space {{.TargetSpace}} in org {{.TargetOrg}} as {{.CurrentUser}}...", |
| 101 | map[string]interface{}{ |
| 102 | "TargetSpace": terminal.EntityNameColor(spaceName), |
| 103 | "TargetOrg": terminal.EntityNameColor(orgName), |
| 104 | "CurrentUser": terminal.EntityNameColor(cmd.config.Username()), |
| 105 | })) |
| 106 | |
| 107 | err := cmd.spaceRepo.Delete(space.GUID) |
| 108 | if err != nil { |
| 109 | return err |
| 110 | } |
| 111 | |
| 112 | cmd.ui.Ok() |
| 113 | |
| 114 | if cmd.config.SpaceFields().GUID == space.GUID { |
| 115 | cmd.config.SetSpaceFields(models.SpaceFields{}) |
| 116 | cmd.ui.Say(T("TIP: No space targeted, use '{{.CfTargetCommand}}' to target a space.", |
| 117 | map[string]interface{}{"CfTargetCommand": cf.Name + " target -s"})) |
| 118 | } |
| 119 | |
| 120 | return nil |
| 121 | } |
nothing calls this directly
no test coverage detected