/shabbat-api

Hebrew Shabbat Java API

Primary LanguageJavaISC LicenseISC

Shabbat Java API Archived.

Original README

Hebrew Shabbat Java API

Shabbat API sends requests and serialize responses to and fro HebCal's Shabbat Times REST API

<dependency>
  <groupId>info.tomfi.shabbat</groupId>
  <artifactId>shabbat-api</artifactId>
  <version>3.0.5</version>
</dependency>

requires info.tomfi.shabbat; // module-info.java

import info.tomfi.shabbat.APIRequest;
import info.tomfi.shabbat.ShabbatAPI;

var api = new ShabbatAPI();
var request = APIRequest.builder()
    .forGeoId(281184)
    .withDate(LocalDate.parse("2022-03-04")) // omit the withDate step to fetch the next shabbat
    .build();
var response = api.sendAsync(request).get();

System.out.println(response.location.city); // Jerusalem
System.out.println(response.location.country); // Israel
System.out.println(response.getShabbatStart()); // 2022-03-04T16:59+02:00
System.out.println(response.getShabbatEnd()); // 2022-03-05T18:30+02:00
System.out.println(response.getShabbatParasha()); // Parashat Pekudei
System.out.println(response.isRoshChodesh()); // true

HebCal Shabbat REST API
The GeoNames Database





JBang script available!

$ jbang shabbat_times@tomerfi -g 281184 -d 2022-03-04

Shabbat info for Jerusalem, Israel:
- starts on Friday, 4 March 2022, 16:59
- ends on Saturday, 5 March 2022, 18:30
- the parasha is Parashat Pekudei
- shabbat is rosh chodesh

Snapshots access

Snapshots are deployed to OSSRH:

<repository>
  <id>snapshots-repo</id>
  <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  <releases>
    <enabled>false</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>