Esta Nagy a2b0360e4b
New mapping approach (#41)
* New mapping approach
- Refreshes license information in file headers
- Rewrites API models to eliminate most of the custom mapping code
- Redefines API configuration options
- Simplifies fetching and mapping logic
- Updates dependency versions
- Reduces Java source level to 8 everywhere to eliminate JavaDoc warnings related to generated code
- Moves some in-line JSONs to class path resources to make tests more clean
- Adds assumptions to skip integration tests if API key is not set
- Adds assumptions to skip One Call API tests unless RUN_ONE_CALL env var is set
- Solves issue around UnsupportedOperationExceptions in certain terminators
- Adds option to use secure channel for picture URLs
- Adds new tests

Signed-off-by: Esta Nagy <nagyesta@gmail.com>

* New mapping approach - Code review
- Minor fixes
- Adds new tests

Signed-off-by: Esta Nagy <nagyesta@gmail.com>

* New mapping approach - Code review
- Add more tests

Signed-off-by: Esta Nagy <nagyesta@gmail.com>

* New mapping approach - Code review
- Unified coordinate and time period usage
- Fixed local system dependent test

Signed-off-by: Esta Nagy <nagyesta@gmail.com>

* New mapping approach - Code review
- Fixed line separator issue in response processing
- Changed how unitSystem can be defined by moving this parameter to the JSON/XML/HTML terminator methods

Signed-off-by: Esta Nagy <nagyesta@gmail.com>

Signed-off-by: Esta Nagy <nagyesta@gmail.com>
2022-10-01 00:57:01 +03:00
2022-10-01 00:57:01 +03:00
2022-10-01 00:57:01 +03:00
2022-10-01 00:57:01 +03:00
2022-10-01 00:57:01 +03:00
2022-05-03 15:01:05 +03:00

OpenWeatherMap Java API Build Status codecov FOSSA Status

Java API for OpenWeatherMap services.

Implemented features:

Free:

  • Current weather data
  • 5 day / 3-hour forecast
  • One Call API
  • Air pollution
  • Geocoding API

Paid:

  • Hourly Forecast 4 days
  • Daily Forecast 16 days
  • Climatic Forecast 30 days
  • Solar Radiation API
  • Road Risk API

Other:

  • Request timeout settings

Will be implemented later:

Free:

  • Weather Stations
  • Weather Triggers

Paid:

  • Bulk Downloading
  • Historical Weather API
  • Historical Weather API 40 years by timestamp
  • Historical Weather API 40 years full archive
  • History Bulk
  • History Forecast Bulk
  • Statistical Weather Data API
  • Accumulated Parameters
  • Historical Weather Data by State for all ZIP codes, USA

Maven coordinates:

<dependency>
    <groupId>com.github.prominence</groupId>
    <artifactId>openweathermap-api</artifactId>
    <version>3.0.0-SNAPSHOT</version>
</dependency>
<repositories>
    ...
    <!-- Repository for snapshot versions -->
    <repository>
        <id>oss.sonatype.org-snapshot</id>
        <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
    ...
</repositories>

Gradle coordinates:

implementation 'com.github.prominence:openweathermap-api:3.0.0-SNAPSHOT'
repositories {
    ...
    // Repository for snapshot versions
    maven {
        url "https://oss.sonatype.org/content/repositories/snapshots"
        mavenContent {
            snapshotsOnly()
        }
    }
    ...
}

Documentation

License

MIT

Languages
Java 100%