in providers/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/UrlMapApi.java [96:215]
Operation create(@PayloadParam("name") String name,
@PayloadParam("defaultService") URI defaultService);
/**
* Updates the specified urlMap resource with the data included in the request.
*
* @param urlMapName the name urlMap to be updated.
* @param urlMapOptions the new urlMap options.
* @return an Operation resource. To check on the status of an operation, poll the Operations resource returned to
* you, and look for the status field.
*/
@Named("UrlMaps:update")
@PUT
@Produces(APPLICATION_JSON)
@Path("/{urlMap}")
Operation update(@PathParam("urlMap") String urlMapName,
@BinderParam(BindToJsonPayload.class) UrlMapOptions urlMapOptions);
/**
* Updates the specified urlMap resource, with patch semantics, with the data included in the request.
* Note:{@link UrlMapOptions.Builder#buildForPatch()} may be helpful.
*
* @param urlMapName the name urlMap to be updated.
* @param urlMapOptions the new urlMap options.
* @return an Operation resource. To check on the status of an operation, poll the Operations resource returned to
* you, and look for the status field.
*/
@Named("UrlMaps:patch")
@PATCH
@Produces(APPLICATION_JSON)
@Path("/{urlMap}")
Operation patch(@PathParam("urlMap") String urlMapName,
@BinderParam(BindToJsonPayload.class) UrlMapOptions urlMapOptions);
/**
* Deletes the specified urlMap resource.
*
* @param urlMapName name of the urlMap resource to delete.
* @return an Operation resource. To check on the status of an operation, poll the Operations resource returned to
* you, and look for the status field. If the image did not exist the result is null.
*/
@Named("UrlMaps:delete")
@DELETE
@Path("/{urlMap}")
@Fallback(NullOnNotFoundOr404.class)
Operation delete(@PathParam("urlMap") String urlMapName);
/**
* Runs the tests specified for the give urlMap resource.
*
* @param urlMapName name of the urlMap to run tests on.
* @param options options that represent the url map to be tested.
* @return the result of the tests for the given urlMap resource.
*/
@Named("UrlMaps:validate")
@POST
@Path("/{urlMap}/validate")
@Fallback(NullOnNotFoundOr404.class)
@Nullable
@MapBinder(BindToJsonPayload.class)
UrlMapValidateResult validate(@PathParam("urlMap") String urlMapName,
@PayloadParam("resource") UrlMapOptions options);
/**
* Runs the tests specified for the give urlMap resource.
*
* @param urlMapName name of the urlMap to run tests on.
* @param urlMap the url map to be tested.
* @return the result of the tests for the given urlMap resource.
*/
@Named("UrlMaps:validate")
@POST
@Path("/{urlMap}/validate")
@Fallback(NullOnNotFoundOr404.class)
@Nullable
@MapBinder(BindToJsonPayload.class)
UrlMapValidateResult validate(@PathParam("urlMap") String urlMapName,
@PayloadParam("resource") UrlMap urlMap);
/**
* Retrieves the list of urlMap resources available to the specified project.
* By default the list as a maximum size of 100, if no options are provided or ListOptions#getMaxResults() has not
* been set.
*
* @param pageToken marks the beginning of the next list page
* @param listOptions listing options
* @return a page of the list
*/
@Named("UrlMaps:list")
@GET
ListPage<UrlMap> listPage(@Nullable @QueryParam("pageToken") String pageToken, ListOptions listOptions);
/** @see #listPage(String, String, ListOptions) */
@Named("UrlMaps:list")
@GET
@Transform(UrlMapPages.class)
Iterator<ListPage<UrlMap>> list();
/** @see #listPage(String, String, ListOptions) */
@Named("UrlMaps:list")
@GET
@Transform(UrlMapPages.class)
Iterator<ListPage<UrlMap>> list(ListOptions options);
static final class UrlMapPages extends BaseToIteratorOfListPage<UrlMap, UrlMapPages> {
private final GoogleComputeEngineApi api;
@Inject UrlMapPages(GoogleComputeEngineApi api) {
this.api = api;
}
@Override protected Function<String, ListPage<UrlMap>> fetchNextPage(final ListOptions options) {
return new Function<String, ListPage<UrlMap>>() {
@Override public ListPage<UrlMap> apply(String pageToken) {
return api.urlMaps().listPage(pageToken, options);
}
};
}
}