Compare commits

...

8 Commits

Author SHA1 Message Date
Wojtek Krzywiec
33ba479942 add README.md 2020-05-14 14:15:52 +02:00
Wojtek Krzywiec
c96c79a2d0 exclude unnecessary classes from test coverage 2020-05-14 13:58:00 +02:00
Wojtek Krzywiec
31db7bf37a rename model folder to dto 2020-05-14 13:45:02 +02:00
Wojtek Krzywiec
94425cda44 rename model folder to dto 2020-05-14 13:44:26 +02:00
Wojtek Krzywiec
4ef128c2f9 Merge pull request #6 from wkrzywiec/sonar-set-up
clean pom.xml
2020-05-14 13:21:50 +02:00
Wojtek Krzywiec
62a5be6d57 Merge pull request #5 from wkrzywiec/sonar-set-up
remove combining jacoco reports
2020-05-14 12:58:21 +02:00
Wojtek Krzywiec
53114aedf2 Merge pull request #4 from wkrzywiec/sonar-set-up
add jacoco merged report
2020-05-14 12:42:29 +02:00
Wojtek Krzywiec
e1f9f7acbc Merge pull request #3 from wkrzywiec/sonar-set-up
test reports in xml
2020-05-14 12:14:49 +02:00
18 changed files with 33 additions and 32 deletions

11
README.md Normal file
View File

@@ -0,0 +1,11 @@
# Library
> written in *Hexagonal (Ports & Adapters) Architecture*
![Master Branch](https://github.com/wkrzywiec/library-hexagonal/workflows/Master%20Branch/badge.svg?branch=master) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=wkrzywiec_library-hexagonal&metric=alert_status)](https://sonarcloud.io/dashboard?id=wkrzywiec_library-hexagonal) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=wkrzywiec_library-hexagonal&metric=coverage)](https://sonarcloud.io/dashboard?id=wkrzywiec_library-hexagonal) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
This is a small application that provides basic REST endpoints for managing library (add new book, reserve, borrow it, etc.).
## Installing / Getting started
Description in future

View File

@@ -19,7 +19,10 @@
<java.version>11</java.version>
<spring-cloud.version>Hoxton.M3</spring-cloud.version>
<surefire.and.failsafe.report.dir>target/test-report</surefire.and.failsafe.report.dir>
<code.coverage.exclusions></code.coverage.exclusions>
<code.coverage.exclusions>
**/io/wkrzywiec/hexagonal/library/domain/book/dto/**,
**/io/wkrzywiec/hexagonal/library/infrastructure/repository/*Entity.java
</code.coverage.exclusions>
</properties>
<dependencies>

View File

@@ -3,8 +3,8 @@ package io.wkrzywiec.hexagonal.library.application;
import io.restassured.RestAssured;
import io.restassured.response.ValidatableResponse;
import io.wkrzywiec.hexagonal.library.TestData;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.infrastructure.repository.BookEntity;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library.application;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.AddNewBook;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;

View File

@@ -1,11 +0,0 @@
package io.wkrzywiec.hexagonal.library.domain.book;
import lombok.Builder;
@Builder
class Book {
long id;
String title;
}

View File

@@ -1,7 +1,7 @@
package io.wkrzywiec.hexagonal.library.domain.book;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.AddNewBook;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.GetBookDetails;
import io.wkrzywiec.hexagonal.library.domain.book.ports.outgoing.BookDatabase;

View File

@@ -1,4 +1,4 @@
package io.wkrzywiec.hexagonal.library.domain.book.model;
package io.wkrzywiec.hexagonal.library.domain.book.dto;
import lombok.Builder;
import lombok.EqualsAndHashCode;

View File

@@ -1,4 +1,4 @@
package io.wkrzywiec.hexagonal.library.domain.book.model;
package io.wkrzywiec.hexagonal.library.domain.book.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library.domain.book.ports.incoming;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.ExternalBookIdDTO;
public interface AddNewBook {
void handle(ExternalBookIdDTO externalBookIdDTO);

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library.domain.book.ports.incoming;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
public interface GetBookDetails {
BookDetailsDTO handle(String bookId);

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library.domain.book.ports.outgoing;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
public interface BookDatabase {

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library.infrastructure.adapter;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.outgoing.BookDatabase;
import io.wkrzywiec.hexagonal.library.infrastructure.repository.AuthorEntiy;
import io.wkrzywiec.hexagonal.library.infrastructure.repository.BookEntity;

View File

@@ -3,13 +3,12 @@ package io.wkrzywiec.hexagonal.library.infrastructure.adapter;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.GetBookDetails;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;

View File

@@ -1,6 +1,6 @@
package io.wkrzywiec.hexagonal.library;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import java.util.Collections;

View File

@@ -2,8 +2,8 @@ package io.wkrzywiec.hexagonal.library.domain;
import io.wkrzywiec.hexagonal.library.TestData;
import io.wkrzywiec.hexagonal.library.domain.book.BookFacade;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.GetBookDetails;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;

View File

@@ -1,7 +1,7 @@
package io.wkrzywiec.hexagonal.library.domain;
import io.wkrzywiec.hexagonal.library.TestData;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.incoming.GetBookDetails;
import java.util.HashMap;

View File

@@ -1,7 +1,6 @@
package io.wkrzywiec.hexagonal.library.domain;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.model.ExternalBookIdDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.ports.outgoing.BookDatabase;
import java.util.concurrent.ConcurrentHashMap;

View File

@@ -1,7 +1,7 @@
package io.wkrzywiec.hexagonal.library.infrastructure.adapter;
import io.wkrzywiec.hexagonal.library.TestData;
import io.wkrzywiec.hexagonal.library.domain.book.model.BookDetailsDTO;
import io.wkrzywiec.hexagonal.library.domain.book.dto.BookDetailsDTO;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;