-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathIServiceInstanceBlocking.cs
35 lines (31 loc) · 1.73 KB
/
IServiceInstanceBlocking.cs
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
using OpenServiceBroker.Errors;
namespace OpenServiceBroker.Instances;
/// <summary>
/// Manages Service Instances with blocking operations.
/// </summary>
public interface IServiceInstanceBlocking : IServiceInstanceBase
{
/// <summary>
/// Provisions a Service Instance.
/// </summary>
/// <param name="context">The id of instance to provision.</param>
/// <param name="request">Parameters for the requested Service Instance provision</param>
/// <exception cref="ConflictException">An instance with the same id already exists but with different attributes.</exception>
/// <returns>the provisioned instance</returns>
Task<ServiceInstanceProvision> ProvisionAsync(ServiceInstanceContext context, ServiceInstanceProvisionRequest request);
/// <summary>
/// Updates a Service Instance.
/// </summary>
/// <param name="context">The id of instance to update.</param>
/// <param name="request">Parameters for the requested Service Instance update</param>
/// <exception cref="BrokerException">The requested change is not supported.</exception>
Task UpdateAsync(ServiceInstanceContext context, ServiceInstanceUpdateRequest request);
/// <summary>
/// Deprovisions/deletes a Service Instance.
/// </summary>
/// <param name="context">The id of instance being deleted.</param>
/// <param name="serviceId">The id of the service associated with the instance being deleted.</param>
/// <param name="planId">The id of the plan associated with the instance being deleted.</param>
/// <exception cref="GoneException">The instance does not exist (anymore).</exception>
Task DeprovisionAsync(ServiceInstanceContext context, string serviceId, string planId);
}