init project and common domain object and values

This commit is contained in:
Ali CANLI
2022-07-08 23:39:48 +03:00
commit 0700d48bed
79 changed files with 813 additions and 0 deletions

8
.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

38
.idea/compiler.xml generated Normal file
View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="order-messaging" />
<module name="order-app" />
<module name="order-application-service" />
<module name="common-domain" />
<module name="order-core-domain" />
<module name="order-data-access" />
<module name="order-container" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel>
<module name="order-domain-core" target="17" />
</bytecodeTargetLevel>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="common" options="-parameters" />
<module name="common-domain" options="-parameters" />
<module name="food-ordering-system" options="" />
<module name="order-app" options="-parameters" />
<module name="order-application-service" options="-parameters" />
<module name="order-container" options="-parameters" />
<module name="order-core-domain" options="-parameters" />
<module name="order-data-access" options="-parameters" />
<module name="order-domain" options="" />
<module name="order-domain-core" options="-parameters" />
<module name="order-messaging" options="-parameters" />
<module name="order-service" options="" />
</option>
</component>
</project>

25
.idea/encodings.xml generated Normal file
View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/common/common-domain/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/common/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/common/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-app/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-app/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-container/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-container/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-data-access/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-data-access/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-domain/order-application-service/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-domain/order-core-domain/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-domain/order-domain-core/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-domain/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-domain/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-messaging/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/order-messaging/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/order-service/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
</component>
</project>

20
.idea/jarRepositories.xml generated Normal file
View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
</component>
</project>

22
.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
<option name="ignoredFiles">
<set>
<option value="$PROJECT_DIR$/order-service/order-domain/order-domain-core/pom.xml" />
</set>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="openjdk-17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="ProjectType">
<option name="id" value="jpab" />
</component>
</project>

View File

@@ -0,0 +1,3 @@
d
java:S6206"IRefactor this class declaration to use 'record Money(BigDecimal amount)'.(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>

33
.idea/sonarlint/issuestore/index.pb generated Normal file
View File

@@ -0,0 +1,33 @@
W
'order-service/order-data-access/pom.xml,f\2\f258deaeb6ebc953857cf7cb5342c2c6d7f03934
l
<order-service/order-domain/order-application-service/pom.xml,7\8\788638a3f575d9e226f07937dfe43f5e87b6139f
U
%order-service/order-container/pom.xml,5\e\5edc4f773e0205d9c5812143cbbd1132b3c3de4c
O
order-service/order-app/pom.xml,2\5\255f6fd0140e765f25a0c5ea7d6c33af3bb1ecec
U
%order-service/order-messaging/pom.xml,c\1\c19aa6db8e37c3805307311ca17ddea372646d36
R
"order-service/order-domain/pom.xml,6\c\6c488d4235eb8af9fe6c7a0dcd6d396f5fb3b9db
L
common/common-domain/pom.xml,3\e\3ebe72cff67b25b3f376cc963b57146cc5d43487
>
common/pom.xml,4\8\488bdbea7e8b73c44bd2a54e63f6012f10969196
7
pom.xml,4\4\442292b8a7efeabbe4cc176709b833b1792140ec
E
order-service/pom.xml,d\3\d3bf53ecc442740843266a635cbfe9807b992566
<EFBFBD>
Qcommon/common-domain/src/main/java/com/food/order/domain/valueobject/OrderId.java,7\3\73533e03c456839a625223f6070a82fe26a051d1

Ocommon/common-domain/src/main/java/com/food/order/domain/valueobject/Money.java,1\9\19055dd2bdebc31a1868d96dadab8510f24e71ee
<EFBFBD>
Ucommon/common-domain/src/main/java/com/food/order/domain/valueobject/OrderStatus.java,6\a\6a4ab22cb9f8e43dd5b01a714d3f60035154029f
<EFBFBD>
Scommon/common-domain/src/main/java/com/food/order/domain/valueobject/ProductId.java,9\0\90ca37cd91bd840352dc5fe9846f4b160b829982
<EFBFBD>
Vcommon/common-domain/src/main/java/com/food/order/domain/valueobject/RestaurantId.java,b\d\bd99e8fd918c1d01925143dbc2e08a8064258f70
<EFBFBD>
Tcommon/common-domain/src/main/java/com/food/order/domain/valueobject/CustomerId.java,c\2\c2aadaf5638ecab2404c0c3149e923f596cb777d

6
.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>common</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>common-domain</artifactId>
<properties>
</properties>
</project>

View File

@@ -0,0 +1,8 @@
package com.food.order.domain.entity;
public abstract class AggregateRoot<ID> extends BaseEntity<ID> {
}

View File

@@ -0,0 +1,25 @@
package com.food.order.domain.entity;
public abstract class BaseEntity<ID> {
private ID id;
public ID getId() {
return id;
}
public void setId(ID id) {
this.id = id;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof BaseEntity<?> that)) return false;
return id.equals(that.id);
}
@Override
public int hashCode() {
return id.hashCode();
}
}

View File

@@ -0,0 +1,6 @@
package com.food.order.domain.event;
public interface DomainEvent<T> {
}

View File

@@ -0,0 +1,26 @@
package com.food.order.domain.valueobject;
public abstract class BaseId<T> {
private final T value;
protected BaseId(T value) {
this.value = value;
}
public T getValue() {
return value;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof BaseId<?> baseId)) return false;
return value.equals(baseId.value);
}
@Override
public int hashCode() {
return value.hashCode();
}
}

View File

@@ -0,0 +1,11 @@
package com.food.order.domain.valueobject;
import java.util.UUID;
public class CustomerId extends BaseId<UUID> {
public CustomerId(UUID value) {
super(value);
}
}

View File

@@ -0,0 +1,56 @@
package com.food.order.domain.valueobject;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Objects;
public class Money {
private final BigDecimal amount;
public Money(BigDecimal amount) {
this.amount = amount;
}
public BigDecimal getAmount() {
return amount;
}
public boolean isGreaterThanZero() {
return Objects.nonNull(this.amount) &&
this.amount.compareTo(BigDecimal.ZERO) > 0;
}
public boolean isGreaterThan(Money other) {
return Objects.nonNull(this.amount) &&
this.amount.compareTo(other.amount) > 0;
}
public Money substract(Money other) {
return new Money(setScale(this.amount.subtract(other.getAmount())));
}
public Money add(Money money) {
return new Money(setScale(this.amount.add(money.getAmount())));
}
public Money multiply(int multiplier) {
return new Money(setScale(this.amount.multiply(new BigDecimal(multiplier))));
}
private BigDecimal setScale(BigDecimal input){
return input.setScale(2, RoundingMode.HALF_EVEN);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof Money money)) return false;
return amount.equals(money.amount);
}
@Override
public int hashCode() {
return amount.hashCode();
}
}

View File

@@ -0,0 +1,11 @@
package com.food.order.domain.valueobject;
import java.util.UUID;
public class OrderId extends BaseId<UUID> {
public OrderId(UUID value) {
super(value);
}
}

View File

@@ -0,0 +1,9 @@
package com.food.order.domain.valueobject;
public enum OrderStatus {
PENDING,
PAID,
APPROVED,
CANCELLED,
CANCELLING
}

View File

@@ -0,0 +1,11 @@
package com.food.order.domain.valueobject;
import java.util.UUID;
public class ProductId extends BaseId<UUID> {
public ProductId(UUID value) {
super(value);
}
}

View File

@@ -0,0 +1,11 @@
package com.food.order.domain.valueobject;
import java.util.UUID;
public class RestaurantId extends BaseId<UUID> {
public RestaurantId(UUID value) {
super(value);
}
}

21
common/pom.xml Normal file
View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>food-ordering-system</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>common</artifactId>
<packaging>pom</packaging>
<modules>
<module>common-domain</module>
</modules>
<properties>
</properties>
</project>

BIN
img/diagram.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 620 KiB

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-service</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-app</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application-service</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,12 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-app" as com_food_order_order_app_jar
rectangle "order-application-service" as com_food_order_order_application_service_jar
com_food_order_order_app_jar -[#000000]-> com_food_order_order_application_service_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-app
groupId=com.food.order
version=1.0-SNAPSHOT

View File

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-service</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-container</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-core-domain</artifactId>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application-service</artifactId>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-app</artifactId>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-data-access</artifactId>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-messaging</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,20 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-container" as com_food_order_order_container_jar
rectangle "order-core-domain" as com_food_order_order_core_domain_jar
rectangle "order-application-service" as com_food_order_order_application_service_jar
rectangle "order-app" as com_food_order_order_app_jar
rectangle "order-data-access" as com_food_order_order_data_access_jar
rectangle "order-messaging" as com_food_order_order_messaging_jar
com_food_order_order_container_jar -[#000000]-> com_food_order_order_core_domain_jar
com_food_order_order_container_jar -[#000000]-> com_food_order_order_application_service_jar
com_food_order_order_container_jar -[#000000]-> com_food_order_order_app_jar
com_food_order_order_container_jar -[#000000]-> com_food_order_order_data_access_jar
com_food_order_order_container_jar -[#000000]-> com_food_order_order_messaging_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-container
groupId=com.food.order
version=1.0-SNAPSHOT

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-service</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-data-access</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application-service</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,12 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-data-access" as com_food_order_order_data_access_jar
rectangle "order-application-service" as com_food_order_order_application_service_jar
com_food_order_order_data_access_jar -[#000000]-> com_food_order_order_application_service_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-data-access
groupId=com.food.order
version=1.0-SNAPSHOT

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-domain</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-application-service</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-core-domain</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,12 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-application-service" as com_food_order_order_application_service_jar
rectangle "order-core-domain" as com_food_order_order_core_domain_jar
com_food_order_order_application_service_jar -[#000000]-> com_food_order_order_core_domain_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-application-service
groupId=com.food.order
version=1.0-SNAPSHOT

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-domain</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-core-domain</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>common-domain</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,10 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-core-domain" as com_food_order_order_core_domain_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-core-domain
groupId=com.food.order
version=1.0-SNAPSHOT

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-service</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-domain</artifactId>
<packaging>pom</packaging>
<modules>
<module>order-core-domain</module>
<module>order-application-service</module>
</modules>
<properties>
</properties>
</project>

View File

@@ -0,0 +1,10 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-domain" as com_food_order_order_domain_pom
@enduml

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>order-service</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-messaging</artifactId>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application-service</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,12 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-messaging" as com_food_order_order_messaging_jar
rectangle "order-application-service" as com_food_order_order_application_service_jar
com_food_order_order_messaging_jar -[#000000]-> com_food_order_order_application_service_jar
@enduml

View File

@@ -0,0 +1,3 @@
artifactId=order-messaging
groupId=com.food.order
version=1.0-SNAPSHOT

25
order-service/pom.xml Normal file
View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>food-ordering-system</artifactId>
<groupId>com.food.order</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>order-service</artifactId>
<packaging>pom</packaging>
<modules>
<module>order-domain</module>
<module>order-app</module>
<module>order-data-access</module>
<module>order-messaging</module>
<module>order-container</module>
</modules>
<properties>
</properties>
</project>

108
pom.xml Normal file
View File

@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.7.1</version>
<relativePath/>
</parent>
<modelVersion>4.0.0</modelVersion>
<modules>
<module>order-service</module>
<module>common</module>
</modules>
<groupId>com.food.order</groupId>
<artifactId>food-ordering-system</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<maven-compiler-plugin.version>3.9.0</maven-compiler-plugin.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-core-domain</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-app</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application-service</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-application</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-data-access</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>common-domain</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.food.order</groupId>
<artifactId>order-messaging</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<release>17</release>
</configuration>
</plugin>
<plugin>
<groupId>com.github.ferstl</groupId>
<artifactId>depgraph-maven-plugin</artifactId>
<version>4.0.1</version>
<configuration>
<scope>compile</scope>
<graphFormat>puml</graphFormat>
<createImage>true</createImage>
<excludes>
<exclude>org.slf4j:slf4j-api</exclude>
<exclude>com.google.guava:guava</exclude>
<exclude>io.vavr:vavr</exclude>
</excludes>
<transitiveExcludes>
<transitiveExclude>*</transitiveExclude>
</transitiveExcludes>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -0,0 +1,22 @@
@startuml
skinparam defaultTextAlignment center
skinparam rectangle {
BackgroundColor<<optional>> beige
BackgroundColor<<test>> lightGreen
BackgroundColor<<runtime>> lightBlue
BackgroundColor<<provided>> lightGray
}
rectangle "order-application-service" as com_food_order_order_application_service_jar_compile
rectangle "order-core-domain" as com_food_order_order_core_domain_jar_compile
rectangle "order-app" as com_food_order_order_app_jar_compile
rectangle "order-data-access" as com_food_order_order_data_access_jar_compile
rectangle "order-messaging" as com_food_order_order_messaging_jar_compile
rectangle "order-container" as com_food_order_order_container_jar_compile
com_food_order_order_application_service_jar_compile -[#000000]-> com_food_order_order_core_domain_jar_compile
com_food_order_order_app_jar_compile -[#000000]-> com_food_order_order_application_service_jar_compile
com_food_order_order_data_access_jar_compile -[#000000]-> com_food_order_order_application_service_jar_compile
com_food_order_order_messaging_jar_compile -[#000000]-> com_food_order_order_application_service_jar_compile
com_food_order_order_container_jar_compile -[#000000]-> com_food_order_order_app_jar_compile
com_food_order_order_container_jar_compile -[#000000]-> com_food_order_order_data_access_jar_compile
com_food_order_order_container_jar_compile -[#000000]-> com_food_order_order_messaging_jar_compile
@enduml