Wasapi is a lightweight, Java-based API utility library that simplifies HTTP service generation and API calls using Retrofit. It abstracts the boilerplate needed to set up and use APIs, making it easier to integrate network calls in your Java applications.
- Simplified API service generation
- Centralized HTTP configuration
- Easy-to-use
wasapi.Callerutility for handling requests - Designed with modularity and readability in mind
Add the required dependency to your project.
<!-- Wasapi -->
<dependency>
<groupId>io.github.umutayb</groupId>
<artifactId>wasapi</artifactId>
<version>0.0.1</version>
</dependency>public interface MyApiServices {
@GET("endpoint")
Call<MyResponse> getData();
}import wasapi.WasapiClient;
MyApiServices api = new WasapiClient.Builder()
.baseUrl("https://api.example.com/")
.build(MyApiServices.class);import retrofit2.Call;
import wasapi.WasapiUtilities;
class MyApi extends WasapiUtilities {
MyApiServices api = new WasapiClient.Builder()
.baseUrl("https://api.example.com/")
.build(MyApiServices.class);
public MyResponse main(String[] args) {
Call apicall = api.getData();
return perform(apicall);
}
}wasapi.WasapiClient: Handles Retrofit service instantiation and base URL setup.wasapi.Caller: Utility to execute API calls and process callbacks in a consistent way.wasapi.WasapiUtilities: A utility class that provides utility methods for building multipart requests from files, monitoring HTTP response codes and validating fields in API responses.
Contributions are welcome! If you’d like to contribute, open an issue or submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.