Skip to content

RuntimeException thrown when IOException occurs on HTTPRequestor level #337

Open
@islandsvinur

Description

@islandsvinur

When requesting the merge requests for a non existing project, e.g. /api/v4/projects/42/merge_requests, the FileNotFoundException caught in GitlabHTTPRequestor is wrapped in a RuntimeException and thrown out uncaught.

I propose to replace the RuntimeException with UncheckedIOException, then catch the UncheckedIOException, unwrap and rethrow the IOException at the API border. This way consumers of the API know exactly what happened to them.

In 4.0.0 threw an Error and was improved in 4.1.0 to throw RuntimeException (#281), so threads are not killed.

I can prepare a PR if you like the proposal.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions