public async override Task <ResponseBase> BindServiceInstance(ServiceBindRequest request)
        {
            ResponseBase response = await base.BindServiceInstance(request);

            if (!response.IsSuccess)
            {
                return(response);
            }
            CredentialsBindingResponse credentialsResponse = new CredentialsBindingResponse
            {
                IsSuccess    = true,
                ResponseCode = ResponseCode.SuccessfulProvision,
                Credentials  = new Credentials
                {
                    Uri              = "mysql://*****:*****@mysqlhost:3306/dbname",
                    Username         = "******",
                    Password         = "******",
                    Host             = "mysqlhost",
                    Port             = 3306,
                    BackingStoreName = "dbname"
                }
            };

            return(credentialsResponse);
        }
コード例 #2
0
        public virtual async Task <IActionResult> UnbindServiceInstance(string instance_id, string binding_id)
        {
            ResponseBase response;
            // 1. Construct the ServiceBindRequest from various input sources
            ServiceBindRequest request = BuildUnBindRequest(instance_id, binding_id);
            // 2. Validate the request
            //      2.a If validation fails, return
            bool isValid = request.IsValid();

            if (!isValid)
            {
                response = new ResponseBase
                {
                    Description = "Bad Request. Check required fields or parameters missing"
                };
                return(BadRequest(response));
            }
            // 3. If provider is not set, send 500 error with ServiceProvisionResponse
            if (_serviceBindingProvider == null)
            {
                response = new ResponseBase
                {
                    Description = "Internal server error. Service Binding Provider is not set"
                };
                return(ServerError(response));
            }
            // 4. Invoke the Provider
            response = await this._serviceBindingProvider.UnbindServiceInstance(request);

            // 5. Capture the response and send
            return(GetControllerResponse(response));
        }
コード例 #3
0
        /// <summary>
        /// Builds ServiceProvisionRequest from various input sources.
        /// </summary>
        /// <param name="instance_id"></param>
        /// <param name="binding_id"></param>
        /// <returns></returns>
        protected async Task <ServiceBindRequest> BuildBindRequest(string instance_id, string binding_id)
        {
            ServiceBindRequest request = await SetProperties();

            request.InstanceId         = instance_id;
            request.BindingId          = binding_id;
            request.ParameterValidator = this._parametersValidator;
            return(request);
        }
        public async override Task <ResponseBase> UnbindServiceInstance(ServiceBindRequest request)
        {
            Console.WriteLine(string.Format("Unbind service instance. Instance Id:{0}, binding Id : {1}", request.InstanceId, request.BindingId));
            CredentialsBindingResponse credentialsResponse = new CredentialsBindingResponse
            {
                IsSuccess    = true,
                ResponseCode = ResponseCode.SuccessfulDelete
            };

            return(credentialsResponse);
        }
コード例 #5
0
        /// <summary>
        /// Builds request from various input sources.
        /// </summary>
        /// <param name="instance_id"></param>
        /// <param name="binding_id"></param>
        /// <returns></returns>
        protected ServiceBindRequest BuildUnBindRequest(string instance_id, string binding_id)
        {
            ServiceBindRequest request = new ServiceBindRequest
            {
                InstanceId = instance_id,
                BindingId  = binding_id,
                ServiceId  = (string)this.GetValueFromQS(SERVICE_ID_KEY),
                PlanId     = (string)this.GetValueFromQS(PLAN_ID_KEY)
            };

            return(request);
        }
コード例 #6
0
 public bool IsValid(ServiceBindRequest request)
 {
     throw new NotImplementedException();
 }