A java client library for https://holidayapi.com/
The API provider doesn't have a java client library, so I developed one and it is very simple to use. Lookup https://holidayapi.com/ for required and optional parameters
Logging
The application uses log4j to log events.
Provide the logging configuration by having the file log4j.xml in the classpath.
You can download the pre-configured configuration file from the directory <project_root>/log4j/log4j2.xml
Usage:
Maven dependency
<dependency>
<groupId>com.github.agogs</groupId>
<artifactId>java-holiday-api</artifactId>
<version>1.1</version>
</dependency>
Sample java code
//create a consumer
APIConsumer consumer = new HolidayAPIConsumer("https://holidayapi.com/v1/holidays");
//generate the wuery parameters
QueryParams params = new QueryParams();
params.key("your_api_key")
.month(1)
.country(QueryParams.Country.INDIA)
.year(2018)
//JSON is the default format
.format(QueryParams.Format.XML)
.pretty(true);
try {
//make the API call
HolidayAPIResponse response = consumer.getHolidays(params);
//check the status code of the API call
int status = response.getStatus();
if (status != 200) {
//handle error scenario
} else {
//handle success scenario
List<Holiday> holidays = response.getHolidays();
for (Holiday h : holidays) {
//do your thing
}
}
} catch (IOException e) {
//handle exception
}
Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.