forked from cloudfoundry/cli
-
Notifications
You must be signed in to change notification settings - Fork 0
/
api_routes.go
97 lines (93 loc) · 7.69 KB
/
api_routes.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
package internal
import "net/http"
// Naming convention:
//
// Method + non-parameter parts of the path
//
// If the request returns a single entity by GUID, use the singular (for example
// /v2/organizations/:organization_guid is GetOrganization).
//
// The const name should always be the const value + Request.
const (
DeleteApplicationProcessInstanceRequest = "DeleteApplicationProcessInstanceRequest"
DeleteApplicationRequest = "DeleteApplication"
DeleteIsolationSegmentRelationshipOrganizationRequest = "DeleteIsolationSegmentRelationshipOrganization"
DeleteIsolationSegmentRequest = "DeleteIsolationSegment"
GetAppDroplets = "GetAppDroplets"
GetAppProcessesRequest = "GetAppProcesses"
GetAppTasksRequest = "GetAppTasks"
GetApplicationProcessByTypeRequest = "GetApplicationProcessByType"
GetAppsRequest = "GetApps"
GetBuildRequest = "GetBuild"
GetIsolationSegmentOrganizationsRequest = "GetIsolationSegmentRelationshipOrganizations"
GetIsolationSegmentRequest = "GetIsolationSegment"
GetIsolationSegmentsRequest = "GetIsolationSegments"
GetOrganizationDefaultIsolationSegmentRequest = "GetOrganizationDefaultIsolationSegment"
GetOrgsRequest = "GetOrgs"
GetPackageRequest = "GetPackage"
GetPackagesRequest = "GetPackages"
GetProcessInstancesRequest = "GetProcessInstances"
GetSpaceRelationshipIsolationSegmentRequest = "GetSpaceRelationshipIsolationSegmentRequest"
PatchApplicationCurrentDropletRequest = "PatchApplicationCurrentDroplet"
PatchApplicationProcessHealthCheckRequest = "PatchApplicationProcessHealthCheck"
PatchApplicationRequest = "PatchApplicationRequest"
PatchOrganizationDefaultIsolationSegmentRequest = "PatchOrganizationDefaultIsolationSegmentRequest"
PatchSpaceRelationshipIsolationSegmentRequest = "PatchSpaceRelationshipIsolationSegmentRequest"
PostAppTasksRequest = "PostAppTasks"
PostApplicationProcessScaleRequest = "PostApplicationProcessScale"
PostApplicationRequest = "PostApplicationRequest"
PostApplicationStartRequest = "PostApplicationStart"
PostApplicationStopRequest = "PostApplicationStop"
PostBuildRequest = "PostBuild"
PostIsolationSegmentRelationshipOrganizationsRequest = "PostIsolationSegmentRelationshipOrganizations"
PostIsolationSegmentsRequest = "PostIsolationSegments"
PostPackageRequest = "PostPackageRequest"
PutTaskCancelRequest = "PutTaskCancelRequest"
)
const (
AppsResource = "apps"
BuildsResource = "builds"
IsolationSegmentsResource = "isolation_segments"
OrgsResource = "organizations"
PackagesResource = "packages"
ProcessesResource = "processes"
SpacesResource = "spaces"
TasksResource = "tasks"
)
// APIRoutes is a list of routes used by the router to construct request URLs.
var APIRoutes = []Route{
{Path: "/", Method: http.MethodGet, Name: GetAppsRequest, Resource: AppsResource},
{Path: "/", Method: http.MethodGet, Name: GetIsolationSegmentsRequest, Resource: IsolationSegmentsResource},
{Path: "/", Method: http.MethodGet, Name: GetOrgsRequest, Resource: OrgsResource},
{Path: "/", Method: http.MethodGet, Name: GetPackagesRequest, Resource: PackagesResource},
{Path: "/", Method: http.MethodPost, Name: PostApplicationRequest, Resource: AppsResource},
{Path: "/", Method: http.MethodPost, Name: PostBuildRequest, Resource: BuildsResource},
{Path: "/", Method: http.MethodPost, Name: PostIsolationSegmentsRequest, Resource: IsolationSegmentsResource},
{Path: "/", Method: http.MethodPost, Name: PostPackageRequest, Resource: PackagesResource},
{Path: "/:app_guid", Method: http.MethodDelete, Name: DeleteApplicationRequest, Resource: AppsResource},
{Path: "/:isolation_segment_guid", Method: http.MethodDelete, Name: DeleteIsolationSegmentRequest, Resource: IsolationSegmentsResource},
{Path: "/:build_guid", Method: http.MethodGet, Name: GetBuildRequest, Resource: BuildsResource},
{Path: "/:isolation_segment_guid", Method: http.MethodGet, Name: GetIsolationSegmentRequest, Resource: IsolationSegmentsResource},
{Path: "/:package_guid", Method: http.MethodGet, Name: GetPackageRequest, Resource: PackagesResource},
{Path: "/:process_guid", Method: http.MethodPatch, Name: PatchApplicationProcessHealthCheckRequest, Resource: ProcessesResource},
{Path: "/:app_guid", Method: http.MethodPatch, Name: PatchApplicationRequest, Resource: AppsResource},
{Path: "/:app_guid/actions/start", Method: http.MethodPost, Name: PostApplicationStartRequest, Resource: AppsResource},
{Path: "/:app_guid/actions/stop", Method: http.MethodPost, Name: PostApplicationStopRequest, Resource: AppsResource},
{Path: "/:task_guid/cancel", Method: http.MethodPut, Name: PutTaskCancelRequest, Resource: TasksResource},
{Path: "/:app_guid/droplets", Method: http.MethodGet, Name: GetAppDroplets, Resource: AppsResource},
{Path: "/:isolation_segment_guid/organizations", Method: http.MethodGet, Name: GetIsolationSegmentOrganizationsRequest, Resource: IsolationSegmentsResource},
{Path: "/:app_guid/processes", Method: http.MethodGet, Name: GetAppProcessesRequest, Resource: AppsResource},
{Path: "/:app_guid/processes/:type", Method: http.MethodGet, Name: GetApplicationProcessByTypeRequest, Resource: AppsResource},
{Path: "/:app_guid/processes/:type/actions/scale", Method: http.MethodPost, Name: PostApplicationProcessScaleRequest, Resource: AppsResource},
{Path: "/:app_guid/processes/:type/instances/:index", Method: http.MethodDelete, Name: DeleteApplicationProcessInstanceRequest, Resource: AppsResource},
{Path: "/:app_guid/relationships/current_droplet", Method: http.MethodPatch, Name: PatchApplicationCurrentDropletRequest, Resource: AppsResource},
{Path: "/:organization_guid/relationships/default_isolation_segment", Method: http.MethodGet, Name: GetOrganizationDefaultIsolationSegmentRequest, Resource: OrgsResource},
{Path: "/:organization_guid/relationships/default_isolation_segment", Method: http.MethodPatch, Name: PatchOrganizationDefaultIsolationSegmentRequest, Resource: OrgsResource},
{Path: "/:space_guid/relationships/isolation_segment", Method: http.MethodGet, Name: GetSpaceRelationshipIsolationSegmentRequest, Resource: SpacesResource},
{Path: "/:space_guid/relationships/isolation_segment", Method: http.MethodPatch, Name: PatchSpaceRelationshipIsolationSegmentRequest, Resource: SpacesResource},
{Path: "/:isolation_segment_guid/relationships/organizations", Method: http.MethodPost, Name: PostIsolationSegmentRelationshipOrganizationsRequest, Resource: IsolationSegmentsResource},
{Path: "/:isolation_segment_guid/relationships/organizations/:organization_guid", Method: http.MethodDelete, Name: DeleteIsolationSegmentRelationshipOrganizationRequest, Resource: IsolationSegmentsResource},
{Path: "/:process_guid/stats", Method: http.MethodGet, Name: GetProcessInstancesRequest, Resource: ProcessesResource},
{Path: "/:app_guid/tasks", Method: http.MethodGet, Name: GetAppTasksRequest, Resource: AppsResource},
{Path: "/:app_guid/tasks", Method: http.MethodPost, Name: PostAppTasksRequest, Resource: AppsResource},
}