googleapis / googleapis/google-http-java-client

HttpResponse should implement Closeable

Open
#740 1 comment 2 reactions 0 assignees View on GitHub
type: feature request
Dominant language
Java
Stars
1.4k
Forks
473
PR merge metrics
No merged PRs in 30d

Description

Currently a `HttpResponse` needs to be disconnected to release resources and avoid leaks. This is fine but it can lead to easy mistakes as people new to the library don't realise this or forget.

If `HttpResponse` implemented the `java.io.Closeable` interface then I think there would be a number of benefits:
- Can use try-with-resources. :+1: :+1: :+1:
- More familiar to developers by implementing the standard interface and using standard method names.
- IDEs and static analysis tools may pick up resource leaks automatically without any extra configuration.

The main downside I can see is that we'd have to keep the `disconnect` method for backwards compatibility and this would mean there would be two interfaces for the same action. Is this a problem? I leave that decision up to you.

I would be happy to implement this if that would help things. It shouldn't be very much work at all. I'm opening this feature request issue in order to gauge if it would be a good idea to implement this or not.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.