Inspectopedia Help

'Channel' opened but not safely closed

Reports Channel resources that are not safely closed, including any instances created by calling getChannel() on a file or socket resource.

By default, the inspection assumes that the resources can be closed by any method with 'close' or 'cleanup' in its name.

Example:

void send(Socket socket) throws IOException { SocketChannel channel = socket.getChannel(); //warning channel.write(ByteBuffer.wrap("message".getBytes())); }

Use the following options to configure the inspection:

  • Whether a Channel resource is allowed to be opened inside a try block. This style is less desirable because it is more verbose than opening a Channel in front of a try block.

  • Whether the resource can be closed by any method call with the resource passed as argument.

Inspection options

Option

Type

Default

Allow resource to be opened inside a 'try' block

Checkbox

false

Any method may close resource argument

Checkbox

true

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023