@Override
    public void beforeRequest(Request<?> request) {

        AmazonWebServiceRequest original = request.getOriginalRequest();

        if (original instanceof TagResourceRequest) {
            TagResourceRequest tagResourceRequest = (TagResourceRequest) original;
            updateResourcePath(request, tagResourceRequest.getResourceArn());
        } else if (original instanceof ListTagsForResourceRequest) {
            ListTagsForResourceRequest listTagsForResourceRequest = (ListTagsForResourceRequest) original;
            updateResourcePath(request, listTagsForResourceRequest.getResourceArn());
        } else if (original instanceof UntagResourceRequest) {
            UntagResourceRequest untagResourceRequest = (UntagResourceRequest) original;
            updateResourcePath(request, untagResourceRequest.getResourceArn());
        }
    }
URL-encodes the ARN for specific operations.
aws-java-sdk-s3control/src/main/java/com/amazonaws/services/s3control/internal/handlers/ArnHandler.java