/* * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.cloudfoundry.client.v2.userprovidedserviceinstances; import reactor.core.publisher.Mono; /** * Main entry point to the Cloud Foundry User Provided Service Instances Client API */ public interface UserProvidedServiceInstances { /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/associate_route_with_the_user_provided_service_instance.html">Associate Route with the User * Provided Service Instance</a> request * * @param request the Associate Route With User Provided Service Instance request * @return the response from the Associate Route With User Provided Service Instance request */ Mono<AssociateUserProvidedServiceInstanceRouteResponse> associateRoute(AssociateUserProvidedServiceInstanceRouteRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/creating_a_user_provided_service_instance.html">Create User Provided Service Instance</a> * request * * @param request the Create User Provided Service Instance request * @return the response from the Create User Provided Service Instance request */ Mono<CreateUserProvidedServiceInstanceResponse> create(CreateUserProvidedServiceInstanceRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/delete_a_particular_user_provided_service_instance.html">Delete the User Provided Service * Instance</a> request * * @param request the Delete User Provided Service Instance request * @return the response from the Delete User Provided Service Instance request */ Mono<Void> delete(DeleteUserProvidedServiceInstanceRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/retrieve_a_particular_user_provided_service_instance.html">Retrieve a Particular User Provided * Service Instance</a> request * * @param request the Get User Provided Service Instance request * @return the response from the Get User Provided Service Instance request */ Mono<GetUserProvidedServiceInstanceResponse> get(GetUserProvidedServiceInstanceRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/list_all_user_provided_service_instances.html">List User Provided Service Instances</a> * request * * @param request the List User Provided Service Instances request * @return the response from the List User Provided Service Instances request */ Mono<ListUserProvidedServiceInstancesResponse> list(ListUserProvidedServiceInstancesRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/list_all_service_bindings_for_the_user_provided_service_instance.html">List all Service * Bindings for the User Provided Service Instance</a> request * * @param request the List Service Bindings request * @return the response from the List Service Bindings request */ Mono<ListUserProvidedServiceInstanceServiceBindingsResponse> listServiceBindings(ListUserProvidedServiceInstanceServiceBindingsRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/remove_route_from_the_user_provided_service_instance.html">Remove Route from the User Provided * Service Instance</a> request * * @param request the Remove Route from the User Provided Service Instance request * @return the response from the Remove Route from the User Provided Service Instance request */ Mono<Void> removeRoute(RemoveUserProvidedServiceInstanceRouteRequest request); /** * Makes the <a href="http://apidocs.cloudfoundry.org/latest-release/user_provided_service_instances/updating_a_user_provided_service_instance.html">Update User Provided Service Instance</a> * request * * @param request the Update User Provided Service Instance request * @return the response from the Update User Provided Service Instance request */ Mono<UpdateUserProvidedServiceInstanceResponse> update(UpdateUserProvidedServiceInstanceRequest request); }