github.com/cloudfoundry-attic/cli-with-i18n@v6.32.1-0.20171002233121-7401370d3b85+incompatible/actor/v3action/application_with_process_summary.go (about) 1 package v3action 2 3 import ( 4 "net/url" 5 6 "code.cloudfoundry.org/cli/api/cloudcontroller/ccv3" 7 ) 8 9 type ApplicationWithProcessSummary struct { 10 Application 11 ProcessSummaries ProcessSummaries 12 } 13 14 func (actor Actor) GetApplicationsWithProcessesBySpace(spaceGUID string) ([]ApplicationWithProcessSummary, Warnings, error) { 15 var allWarnings Warnings 16 17 apps, warnings, err := actor.CloudControllerClient.GetApplications(url.Values{ 18 ccv3.SpaceGUIDFilter: []string{spaceGUID}, 19 ccv3.OrderBy: []string{ccv3.NameOrder}, 20 }) 21 allWarnings = Warnings(warnings) 22 if err != nil { 23 return nil, allWarnings, err 24 } 25 26 var appSummaries []ApplicationWithProcessSummary 27 28 for _, app := range apps { 29 processSummaries, processWarnings, err := actor.getProcessSummariesForApp(app.GUID) 30 allWarnings = append(allWarnings, processWarnings...) 31 if err != nil { 32 return nil, allWarnings, err 33 } 34 35 appSummaries = append(appSummaries, ApplicationWithProcessSummary{ 36 Application: Application{ 37 Name: app.Name, 38 GUID: app.GUID, 39 State: app.State, 40 Lifecycle: AppLifecycle{ 41 Type: AppLifecycleType(app.Lifecycle.Type), 42 Data: AppLifecycleData(app.Lifecycle.Data), 43 }, 44 }, 45 ProcessSummaries: processSummaries, 46 }) 47 } 48 49 return appSummaries, allWarnings, nil 50 }