github.com/cloudfoundry-attic/cli-with-i18n@v6.32.1-0.20171002233121-7401370d3b85+incompatible/api/cloudcontroller/ccv3/internal/api_routes.go (about)

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