Annotation Type RestClient


@Retention(CLASS) @Target(TYPE) public @interface RestClient

Marks an interface as a REST client that the build-time annotation processor wires up to a generated network implementation. Companion HTTP-verb annotations (GET, POST, PUT, DELETE, PATCH) on each method carry the path; parameter annotations (Path, Query, Header, Body) describe how each argument is attached to the request.

The processor emits a <Tag>ApiImpl class in generated-sources and registers it with RestClients so the interface's static T of(String baseUrl) factory can return an instance without the project source referencing the impl directly.