@Override
    public UpdateServiceInstanceResult updateServiceInstance(UpdateServiceInstanceRequest request) {
        request = beforeClientExecution(request);
        return executeUpdateServiceInstance(request);
    }
<p>
Update a service instance.
</p>
<p>
There are a few modes for updating a service instance. The <code>deploymentType</code> field defines the mode.
</p>
<note>
<p>
You can't update a service instance while its deployment status, or the deployment status of a component attached
to it, is <code>IN_PROGRESS</code>.
</p>
<p>
For more information about components, see <a
href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the
<i>Proton User Guide</i>.
</p>
</note>

@param updateServiceInstanceRequest
@return Result of the UpdateServiceInstance operation returned by the service.
@throws ValidationException
        The input is invalid or an out-of-range value was supplied for the input parameter.
@throws AccessDeniedException
        There <i>isn't</i> sufficient access for performing this action.
@throws ThrottlingException
        The request was denied due to request throttling.
@throws ConflictException
        The request <i>couldn't</i> be made due to a conflicting operation or resource.
@throws ResourceNotFoundException
        The requested resource <i>wasn't</i> found.
@throws InternalServerException
        The request failed to register with the service.
@sample AWSProton.UpdateServiceInstance
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceInstance" target="_top">AWS
     API Documentation</a>
aws-java-sdk-proton/src/main/java/com/amazonaws/services/proton/AWSProtonClient.java