Skip to content

pdssp/crs-service

Repository files navigation

CRS Service

Build Status Powered by Apache SIS Powered by Spring Boot

A web-service that provides code snippets for coordinate conversions.

Requirements

  • JDK 21

  • Optional Gradle 8.10.2 if you rather use gradle command instead of the ./gradlew wrapper command (that downloads Gradle for you)

Usage

The following command compiles and launch the webservice locally on port 8080:

./gradlew bootRun

To start on another port, do:

./gradlew bootRun --args="--server.port=8081"

To use IAU definitions directly from Planetary CRS registry Github repository, use the following command:

./gradlew bootRun --args="--geomatys.iau.factory.wkt.file=https://raw.githubusercontent.com/pdssp/planet_crs_registry/refs/heads/main/data/result.wkts"

To compile the project without launching the service:

./gradlew build

GIGS tests

To run GIGS conformance tests, run:

./gradlew gigs

The task produces a test report in build/reports/tests/gigs/index.html.

Note

The service is not fully compliant with GIGS tests for now, so the test task is allowed to produce errors without failing the build. GIGS testing is only informative for now.

Include GIGS test report in built server

If you set the project property spring-boot.include-gigs-report to true, build and bootJar tasks will automatically launch GIGS tests and include test report in built server at <server-base-url>/tests/gigs/index.html.

Example:

gradle bootRun -Pspring-boot.include-gigs-report=true

Documentation

Project technical documentation is available here.

Contribute

CRS Operation REST API

The service offers a /crs/operation GET and POST endpoint to query a CRS Operation source code.

The service responsible for this operation is CRSOperationService interface. To customize behavior, replace or modify the only implementation of this interface.

Integration tests

To make tests that simulate the web service, inherit the AbstractIntegrationTest class. It provides a web client (through createClient() method) that you can use to simulate HTTP requests to the server.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •