URL SHORTENER
The source repository for URL Shortener project.
It provides APIs for converting long URls into shorter URIs. For example:
Input URI: "https://www.google.com/"
Output URI: "vat.sl/1"
It also provides mechanism to fetch the original link from the short link.
The application has centralized exception handling using @ControllerAdvice.
The application uses SLF4J and logback for logging.
The application uses H2 db (in-memory DB).
The application is configured with graceful shutdown.
The application performs input validations.
Java 11
Gradle
./gradlew build
./gradlew bootRun
./gradlew test
build/reports/jacoco/test/html/index.html
src/main/resources/URL Shortener.postman_collection.json
Change the desired levels in logback.xml and application.properties.
Server is configured with graceful shutdown period of 1 minute. To change, modify "spring.lifecycle.timeout-per-shutdown-phase=1m" property in applications.properties.
While application is running, open below links in the browser:
http://localhost:8080/projects/shortener/swagger-ui/index.html