RestTemplate com ClientHttpRequestInterceptor causa a compactação GZIP duas vezes

Estou usando um ClientHttpRequestInterceptor para adicionar um cabeçalho de Autorização Básica a cada solicitação feita pelo RestTemplate no meu projeto Android. Também estou compactando o corpo da solicitação, configurando o cabeçalho de codificação de conteúdo como "gzip". Adicionar um interceptor ao RestTemplate faz com que o método request.execute seja chamado duas vezes; comprimir o corpo duas vezes.

Interceptor:

public class BasicAuthRequestInterceptor implements ClientHttpRequestInterceptor {

/** The base64 encoded credentials */
private final String encodedCredentials;

public BasicAuthRequestInterceptor(final String username, final String password) {
    this.encodedCredentials = new String(Base64.encodeBytes((username + ":" + password).getBytes()));
}

@Override
public ClientHttpResponse intercept(final HttpRequest request, final byte[] body,
        final ClientHttpRequestExecution execution) throws IOException {

    HttpHeaders headers = request.getHeaders();
    headers.add("Authorization", "Basic " + this.encodedCredentials);

    return execution.execute(request, body);
}

}

Configuração RestTemplate:

// Create a new rest template
final RestTemplate restTemplate = new RestTemplate(requestFactory);

// Add authorisation interceptor
final List<ClientHttpRequestInterceptor> interceptors = new ArrayList<ClientHttpRequestInterceptor>();
interceptors.add(new BasicAuthRequestInterceptor(HTTP_AUTH_USERNAME, HTTP_AUTH_PASSWORD));
restTemplate.setInterceptors(interceptors);

Eu não acho que esse seja o comportamento esperado e não encontrei mais ninguém relatando esse problema. Existe algum problema com a implementação do Interceptor? Posso solucionar o problema configurando o cabeçalho de codificação de conteúdo no ponto em que defini o cabeçalho de autorização, mas isso não é desejável

Isso está usando a versão 1.0.1.RELEASE da dependência spring-android-rest-template.

questionAnswers(0)

yourAnswerToTheQuestion