From 83b10025cb3203ef8f3421444e37ba5ed0947b62 Mon Sep 17 00:00:00 2001
From: Martin Weise <martin.weise@tuwien.ac.at>
Date: Wed, 10 Mar 2021 21:44:21 +0100
Subject: [PATCH] maven problems

---
 .../dto/container/ContainerActionTypeDto.java |  2 +-
 .../api/dto/container/ContainerChangeDto.java |  2 +-
 .../api/dto/container/ContainerDto.java       |  2 +-
 .../container/DatabaseContainerBriefDto.java  |  2 +-
 .../dto/container/DatabaseContainerDto.java   |  2 +-
 .../CreateDatabaseConnectionDataDto.java      |  2 +-
 .../database/CreateDatabaseContainerDto.java  |  2 +-
 .../database/CreateDatabaseResponseDto.java   |  2 +-
 .../src/main/java/{ => at/tuwien}/api/pom.xml |  0
 fda-container-managing-service/pom.xml        | 17 ++++----
 .../rest-service/pom.xml                      |  9 +++++
 .../FdaContainerManagingApplication.java      | 10 ++++-
 .../{ => at/tuwien}/config/SwaggerConfig.java |  4 +-
 .../DatabaseContainerController.java          | 18 ++++-----
 .../src/main/resources/application-docker.yml |  2 +-
 .../{application-dev.yml => application.yml}  |  8 +++-
 .../services/pom.xml                          | 17 ++++----
 .../tuwien}/config/ContainerSpringConfig.java |  2 +-
 .../java/at/tuwien/entities/Auditable.java    | 40 +++++++++++++++++++
 .../at/tuwien/entities/DatabaseContainer.java | 33 +++++++++++++++
 .../mapper/DatabaseContainerMapper.java       |  8 ++--
 .../repositories/MetadataRepository.java      |  4 +-
 .../tuwien}/service/ContainerService.java     |  8 ++--
 .../main/java/entities/DatabaseContainer.java | 23 -----------
 24 files changed, 148 insertions(+), 71 deletions(-)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/container/ContainerActionTypeDto.java (63%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/container/ContainerChangeDto.java (79%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/container/ContainerDto.java (88%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/container/DatabaseContainerBriefDto.java (83%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/container/DatabaseContainerDto.java (88%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/database/CreateDatabaseConnectionDataDto.java (90%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/database/CreateDatabaseContainerDto.java (83%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/dto/database/CreateDatabaseResponseDto.java (82%)
 rename fda-container-managing-service/api/src/main/java/{ => at/tuwien}/api/pom.xml (100%)
 rename fda-container-managing-service/rest-service/src/main/java/{ => at/tuwien}/FdaContainerManagingApplication.java (52%)
 rename fda-container-managing-service/rest-service/src/main/java/{ => at/tuwien}/config/SwaggerConfig.java (92%)
 rename fda-container-managing-service/rest-service/src/main/java/{ => at/tuwien}/endpoints/DatabaseContainerController.java (85%)
 rename fda-container-managing-service/rest-service/src/main/resources/{application-dev.yml => application.yml} (75%)
 rename fda-container-managing-service/services/src/main/java/{ => at/tuwien}/config/ContainerSpringConfig.java (96%)
 create mode 100644 fda-container-managing-service/services/src/main/java/at/tuwien/entities/Auditable.java
 create mode 100644 fda-container-managing-service/services/src/main/java/at/tuwien/entities/DatabaseContainer.java
 rename fda-container-managing-service/services/src/main/java/{ => at/tuwien}/mapper/DatabaseContainerMapper.java (88%)
 rename fda-container-managing-service/services/src/main/java/{ => at/tuwien}/repositories/MetadataRepository.java (73%)
 rename fda-container-managing-service/services/src/main/java/{ => at/tuwien}/service/ContainerService.java (93%)
 delete mode 100644 fda-container-managing-service/services/src/main/java/entities/DatabaseContainer.java

diff --git a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerActionTypeDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerActionTypeDto.java
similarity index 63%
rename from fda-container-managing-service/api/src/main/java/api/dto/container/ContainerActionTypeDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerActionTypeDto.java
index 42c9909b14..8e65548f2e 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerActionTypeDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerActionTypeDto.java
@@ -1,4 +1,4 @@
-package api.dto.container;
+package at.tuwien.api.dto.container;
 
 public enum ContainerActionTypeDto {
     START, STOP, REMOVE
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerChangeDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerChangeDto.java
similarity index 79%
rename from fda-container-managing-service/api/src/main/java/api/dto/container/ContainerChangeDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerChangeDto.java
index 6f0e1c5bb1..c7dbf3680b 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerChangeDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerChangeDto.java
@@ -1,4 +1,4 @@
-package api.dto.container;
+package at.tuwien.api.dto.container;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerDto.java
similarity index 88%
rename from fda-container-managing-service/api/src/main/java/api/dto/container/ContainerDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerDto.java
index f3ffbb51c2..6e23c906f4 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/container/ContainerDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/ContainerDto.java
@@ -1,4 +1,4 @@
-package api.dto.container;
+package at.tuwien.api.dto.container;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerBriefDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerBriefDto.java
similarity index 83%
rename from fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerBriefDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerBriefDto.java
index 012e8ced99..ea5fa9d846 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerBriefDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerBriefDto.java
@@ -1,4 +1,4 @@
-package api.dto.container;
+package at.tuwien.api.dto.container;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerDto.java
similarity index 88%
rename from fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerDto.java
index 344adccfc1..50461db0da 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/container/DatabaseContainerDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/container/DatabaseContainerDto.java
@@ -1,4 +1,4 @@
-package api.dto.container;
+package at.tuwien.api.dto.container;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseConnectionDataDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseConnectionDataDto.java
similarity index 90%
rename from fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseConnectionDataDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseConnectionDataDto.java
index d78d7b99af..24cb2bf6af 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseConnectionDataDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseConnectionDataDto.java
@@ -1,4 +1,4 @@
-package api.dto.database;
+package at.tuwien.api.dto.database;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.AllArgsConstructor;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseContainerDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseContainerDto.java
similarity index 83%
rename from fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseContainerDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseContainerDto.java
index d1ea568c45..c7377b7474 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseContainerDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseContainerDto.java
@@ -1,4 +1,4 @@
-package api.dto.database;
+package at.tuwien.api.dto.database;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseResponseDto.java b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseResponseDto.java
similarity index 82%
rename from fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseResponseDto.java
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseResponseDto.java
index 4aa91f5ecf..48c2a1e697 100644
--- a/fda-container-managing-service/api/src/main/java/api/dto/database/CreateDatabaseResponseDto.java
+++ b/fda-container-managing-service/api/src/main/java/at/tuwien/api/dto/database/CreateDatabaseResponseDto.java
@@ -1,4 +1,4 @@
-package api.dto.database;
+package at.tuwien.api.dto.database;
 
 import lombok.Builder;
 import lombok.Getter;
diff --git a/fda-container-managing-service/api/src/main/java/api/pom.xml b/fda-container-managing-service/api/src/main/java/at/tuwien/api/pom.xml
similarity index 100%
rename from fda-container-managing-service/api/src/main/java/api/pom.xml
rename to fda-container-managing-service/api/src/main/java/at/tuwien/api/pom.xml
diff --git a/fda-container-managing-service/pom.xml b/fda-container-managing-service/pom.xml
index cf8696a72c..b35382b853 100644
--- a/fda-container-managing-service/pom.xml
+++ b/fda-container-managing-service/pom.xml
@@ -2,27 +2,30 @@
 <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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
-    <packaging>pom</packaging>
-    <modules>
-        <module>rest-service</module>
-        <module>api</module>
-        <module>services</module>
-    </modules>
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
         <version>2.3.4.RELEASE</version>
-        <relativePath/> <!-- lookup parent from repository -->
     </parent>
+
     <groupId>at.tuwien</groupId>
     <artifactId>fda-container-managing-service</artifactId>
     <version>0.0.1-SNAPSHOT</version>
     <name>fda-container-managing-service</name>
     <description>Demo project for Spring Boot</description>
 
+    <packaging>pom</packaging>
+    <modules>
+        <module>rest-service</module>
+        <module>api</module>
+        <module>services</module>
+    </modules>
+
     <properties>
         <java.version>11</java.version>
         <spring-cloud.version>Hoxton.SR8</spring-cloud.version>
+        <mapstruct.version>1.4.2.Final</mapstruct.version>
+        <mainClass>at.tuwien.FdaContainerManagingApplication</mainClass>
     </properties>
 
     <dependencies>
diff --git a/fda-container-managing-service/rest-service/pom.xml b/fda-container-managing-service/rest-service/pom.xml
index 7445a95ba0..00c4d0a2de 100644
--- a/fda-container-managing-service/rest-service/pom.xml
+++ b/fda-container-managing-service/rest-service/pom.xml
@@ -17,4 +17,13 @@
         <maven.compiler.target>11</maven.compiler.target>
     </properties>
 
+    <dependencies>
+        <dependency>
+            <groupId>at.tuwien</groupId>
+            <artifactId>services</artifactId>
+            <version>0.0.1-SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
+    </dependencies>
+
 </project>
\ No newline at end of file
diff --git a/fda-container-managing-service/rest-service/src/main/java/FdaContainerManagingApplication.java b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/FdaContainerManagingApplication.java
similarity index 52%
rename from fda-container-managing-service/rest-service/src/main/java/FdaContainerManagingApplication.java
rename to fda-container-managing-service/rest-service/src/main/java/at/tuwien/FdaContainerManagingApplication.java
index 77eed7e691..c9a29afc15 100644
--- a/fda-container-managing-service/rest-service/src/main/java/FdaContainerManagingApplication.java
+++ b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/FdaContainerManagingApplication.java
@@ -1,10 +1,18 @@
+package at.tuwien;
+
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.domain.EntityScan;
 import org.springframework.context.annotation.ComponentScan;
+import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
 import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
 @SpringBootApplication
-@ComponentScan(basePackages = "entities")
+@EnableJpaAuditing
+@ComponentScan(basePackages = {"at.tuwien"})
+@EnableJpaRepositories(basePackages = {"at.tuwien.repositories"})
+@EntityScan(basePackages = {"at.tuwien.entities"})
 @EnableSwagger2
 public class FdaContainerManagingApplication {
 
diff --git a/fda-container-managing-service/rest-service/src/main/java/config/SwaggerConfig.java b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/config/SwaggerConfig.java
similarity index 92%
rename from fda-container-managing-service/rest-service/src/main/java/config/SwaggerConfig.java
rename to fda-container-managing-service/rest-service/src/main/java/at/tuwien/config/SwaggerConfig.java
index d39a7add5c..0af2a36d7c 100644
--- a/fda-container-managing-service/rest-service/src/main/java/config/SwaggerConfig.java
+++ b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/config/SwaggerConfig.java
@@ -1,4 +1,4 @@
-package config;
+package at.tuwien.config;
 
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
@@ -26,7 +26,7 @@ public class SwaggerConfig {
 
     private ApiInfo apiInfo() {
         return new ApiInfo("FDA-Container-Managing API",
-                "Docker service that can manage Docker services",
+                "Docker at.tuwien.service that can manage Docker services",
                 "1.0",
                 null,
                 new Contact("Martin Weise", "https://informatics.tuwien.ac.at/people/martin-weise", "martin.weise@tuwien.ac.at"),
diff --git a/fda-container-managing-service/rest-service/src/main/java/endpoints/DatabaseContainerController.java b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseContainerController.java
similarity index 85%
rename from fda-container-managing-service/rest-service/src/main/java/endpoints/DatabaseContainerController.java
rename to fda-container-managing-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseContainerController.java
index a4015dc1a5..dde2c15dab 100644
--- a/fda-container-managing-service/rest-service/src/main/java/endpoints/DatabaseContainerController.java
+++ b/fda-container-managing-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseContainerController.java
@@ -1,14 +1,14 @@
-package endpoints;
+package at.tuwien.endpoints;
 
-import api.dto.container.ContainerActionTypeDto;
-import api.dto.container.DatabaseContainerBriefDto;
-import api.dto.container.DatabaseContainerDto;
-import api.dto.database.CreateDatabaseContainerDto;
-import api.dto.database.CreateDatabaseResponseDto;
+import at.tuwien.api.dto.container.ContainerActionTypeDto;
+import at.tuwien.api.dto.container.DatabaseContainerBriefDto;
+import at.tuwien.api.dto.container.DatabaseContainerDto;
+import at.tuwien.api.dto.database.CreateDatabaseContainerDto;
+import at.tuwien.api.dto.database.CreateDatabaseResponseDto;
+import at.tuwien.entities.DatabaseContainer;
+import at.tuwien.mapper.DatabaseContainerMapper;
+import at.tuwien.service.ContainerService;
 import io.swagger.annotations.ApiOperation;
-import services.entities.DatabaseContainer;
-import services.mapper.DatabaseContainerMapper;
-import services.service.ContainerService;
 import lombok.extern.log4j.Log4j2;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
diff --git a/fda-container-managing-service/rest-service/src/main/resources/application-docker.yml b/fda-container-managing-service/rest-service/src/main/resources/application-docker.yml
index 8e0e48bc58..3771aadd42 100644
--- a/fda-container-managing-service/rest-service/src/main/resources/application-docker.yml
+++ b/fda-container-managing-service/rest-service/src/main/resources/application-docker.yml
@@ -19,7 +19,7 @@ spring:
     loadbalancer.ribbon.enabled: false
 server.port: 9091
 logging:
-  pattern.console: %d %highlight(%-5level) %msg%n
+  pattern.console: "%d %highlight(%-5level) %msg%n"
   level:
     root: warn
     at.: info
diff --git a/fda-container-managing-service/rest-service/src/main/resources/application-dev.yml b/fda-container-managing-service/rest-service/src/main/resources/application.yml
similarity index 75%
rename from fda-container-managing-service/rest-service/src/main/resources/application-dev.yml
rename to fda-container-managing-service/rest-service/src/main/resources/application.yml
index 569c76fd01..73dc92e4bc 100644
--- a/fda-container-managing-service/rest-service/src/main/resources/application-dev.yml
+++ b/fda-container-managing-service/rest-service/src/main/resources/application.yml
@@ -1,4 +1,5 @@
 spring:
+  main.banner-mode: off
   datasource:
     url: jdbc:postgresql://localhost:5432/fda
     driver-class-name: org.postgresql.Driver
@@ -8,12 +9,17 @@ spring:
     show-sql: true
     properties:
       hibernate:
-        ddl-auto: update
+        ddl-auto: create-drop
         dialect: org.hibernate.dialect.PostgreSQLDialect
     hibernate.ddl-auto: none
     hibernate.show-sql: true
   application:
     name: fda-container-managing
 server.port: 9091
+logging:
+  pattern.console: "%d %highlight(%-5level) %msg%n"
+  level:
+    root: warn
+    at.: debug
 eureka:
   client.serviceUrl.defaultZone: http://localhost:9090/eureka/
\ No newline at end of file
diff --git a/fda-container-managing-service/services/pom.xml b/fda-container-managing-service/services/pom.xml
index 1f85e383c4..182770b4d1 100644
--- a/fda-container-managing-service/services/pom.xml
+++ b/fda-container-managing-service/services/pom.xml
@@ -3,14 +3,6 @@
          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">
     <modelVersion>4.0.0</modelVersion>
-    <dependencies>
-        <dependency>
-            <groupId>at.tuwien</groupId>
-            <artifactId>api</artifactId>
-            <version>0.0.1-SNAPSHOT</version>
-            <scope>compile</scope>
-        </dependency>
-    </dependencies>
     <parent>
         <groupId>at.tuwien</groupId>
         <artifactId>fda-container-managing-service</artifactId>
@@ -25,4 +17,13 @@
         <maven.compiler.target>11</maven.compiler.target>
     </properties>
 
+    <dependencies>
+        <dependency>
+            <groupId>at.tuwien</groupId>
+            <artifactId>api</artifactId>
+            <version>0.0.1-SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
+    </dependencies>
+
 </project>
\ No newline at end of file
diff --git a/fda-container-managing-service/services/src/main/java/config/ContainerSpringConfig.java b/fda-container-managing-service/services/src/main/java/at/tuwien/config/ContainerSpringConfig.java
similarity index 96%
rename from fda-container-managing-service/services/src/main/java/config/ContainerSpringConfig.java
rename to fda-container-managing-service/services/src/main/java/at/tuwien/config/ContainerSpringConfig.java
index 1cf6d327be..c7377936ad 100644
--- a/fda-container-managing-service/services/src/main/java/config/ContainerSpringConfig.java
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/config/ContainerSpringConfig.java
@@ -1,4 +1,4 @@
-package config;
+package at.tuwien.config;
 
 import com.github.dockerjava.api.DockerClient;
 import com.github.dockerjava.core.DefaultDockerClientConfig;
diff --git a/fda-container-managing-service/services/src/main/java/at/tuwien/entities/Auditable.java b/fda-container-managing-service/services/src/main/java/at/tuwien/entities/Auditable.java
new file mode 100644
index 0000000000..a8e209adc9
--- /dev/null
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/entities/Auditable.java
@@ -0,0 +1,40 @@
+package at.tuwien.entities;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import org.hibernate.annotations.GenericGenerator;
+import org.hibernate.annotations.Parameter;
+import org.springframework.data.annotation.CreatedDate;
+import org.springframework.data.annotation.LastModifiedDate;
+import org.springframework.data.jpa.domain.support.AuditingEntityListener;
+
+import javax.persistence.*;
+import java.time.Instant;
+
+@Data
+@EqualsAndHashCode(onlyExplicitlyIncluded = true)
+@ToString(onlyExplicitlyIncluded = true)
+@MappedSuperclass
+@EntityListeners(AuditingEntityListener.class)
+public abstract class Auditable {
+
+    @Id
+    @EqualsAndHashCode.Include
+    @ToString.Include
+    @GeneratedValue(generator = "sequence-per-entity")
+    @GenericGenerator(
+            name = "sequence-per-entity",
+            strategy = "enhanced-sequence",
+            parameters = @Parameter(name = "prefer_sequence_per_entity", value = "true")
+    )
+    private Long id;
+
+    @Column(nullable = false, updatable = false)
+    @CreatedDate
+    private Instant created;
+
+    @Column
+    @LastModifiedDate
+    private Instant lastModified;
+}
\ No newline at end of file
diff --git a/fda-container-managing-service/services/src/main/java/at/tuwien/entities/DatabaseContainer.java b/fda-container-managing-service/services/src/main/java/at/tuwien/entities/DatabaseContainer.java
new file mode 100644
index 0000000000..49355e55dc
--- /dev/null
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/entities/DatabaseContainer.java
@@ -0,0 +1,33 @@
+package at.tuwien.entities;
+
+import lombok.*;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import java.time.Instant;
+
+
+@Entity
+@EqualsAndHashCode(callSuper = true, onlyExplicitlyIncluded = true)
+@ToString(callSuper = true, onlyExplicitlyIncluded = true)
+public class DatabaseContainer extends Auditable{
+
+    @Column(nullable = false)
+    private String containerId;
+
+    @Column(nullable = false)
+    private Instant containerCreated;
+
+    @Column(nullable = false)
+    private String containerName;
+
+    @Column(nullable = false)
+    private String databaseName;
+
+    @Column
+    private String status;
+
+    @Column
+    private String ipAddress;
+
+}
diff --git a/fda-container-managing-service/services/src/main/java/mapper/DatabaseContainerMapper.java b/fda-container-managing-service/services/src/main/java/at/tuwien/mapper/DatabaseContainerMapper.java
similarity index 88%
rename from fda-container-managing-service/services/src/main/java/mapper/DatabaseContainerMapper.java
rename to fda-container-managing-service/services/src/main/java/at/tuwien/mapper/DatabaseContainerMapper.java
index ed4e1427ef..26a92c68b4 100644
--- a/fda-container-managing-service/services/src/main/java/mapper/DatabaseContainerMapper.java
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/mapper/DatabaseContainerMapper.java
@@ -1,10 +1,10 @@
-package mapper;
+package at.tuwien.mapper;
 
-import api.dto.container.DatabaseContainerBriefDto;
-import api.dto.container.DatabaseContainerDto;
+import at.tuwien.api.dto.container.DatabaseContainerBriefDto;
+import at.tuwien.api.dto.container.DatabaseContainerDto;
 import com.github.dockerjava.api.command.InspectContainerResponse;
 import com.github.dockerjava.api.model.Container;
-import entities.DatabaseContainer;
+import at.tuwien.entities.DatabaseContainer;
 import org.mapstruct.Mapper;
 import org.mapstruct.Mapping;
 import org.mapstruct.Mappings;
diff --git a/fda-container-managing-service/services/src/main/java/repositories/MetadataRepository.java b/fda-container-managing-service/services/src/main/java/at/tuwien/repositories/MetadataRepository.java
similarity index 73%
rename from fda-container-managing-service/services/src/main/java/repositories/MetadataRepository.java
rename to fda-container-managing-service/services/src/main/java/at/tuwien/repositories/MetadataRepository.java
index 888e9bef68..5c7fc6ba05 100644
--- a/fda-container-managing-service/services/src/main/java/repositories/MetadataRepository.java
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/repositories/MetadataRepository.java
@@ -1,8 +1,8 @@
-package repositories;
+package at.tuwien.repositories;
 
+import at.tuwien.entities.DatabaseContainer;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Repository;
-import services.entities.DatabaseContainer;
 
 @Repository
 public interface MetadataRepository extends JpaRepository<DatabaseContainer, String> {
diff --git a/fda-container-managing-service/services/src/main/java/service/ContainerService.java b/fda-container-managing-service/services/src/main/java/at/tuwien/service/ContainerService.java
similarity index 93%
rename from fda-container-managing-service/services/src/main/java/service/ContainerService.java
rename to fda-container-managing-service/services/src/main/java/at/tuwien/service/ContainerService.java
index 1fb0087dda..63b3cf9a68 100644
--- a/fda-container-managing-service/services/src/main/java/service/ContainerService.java
+++ b/fda-container-managing-service/services/src/main/java/at/tuwien/service/ContainerService.java
@@ -1,14 +1,14 @@
-package service;
+package at.tuwien.service;
 
-import api.dto.database.CreateDatabaseContainerDto;
+import at.tuwien.api.dto.database.CreateDatabaseContainerDto;
 import com.github.dockerjava.api.DockerClient;
 import com.github.dockerjava.api.command.InspectContainerResponse;
 import com.github.dockerjava.api.model.Container;
 import com.github.dockerjava.api.model.HostConfig;
 import com.github.dockerjava.api.model.PortBinding;
 import com.github.dockerjava.api.model.RestartPolicy;
-import entities.DatabaseContainer;
-import mapper.DatabaseContainerMapper;
+import at.tuwien.entities.DatabaseContainer;
+import at.tuwien.mapper.DatabaseContainerMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.SocketUtils;
diff --git a/fda-container-managing-service/services/src/main/java/entities/DatabaseContainer.java b/fda-container-managing-service/services/src/main/java/entities/DatabaseContainer.java
deleted file mode 100644
index 6ff76e5aa9..0000000000
--- a/fda-container-managing-service/services/src/main/java/entities/DatabaseContainer.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package entities;
-
-import lombok.Getter;
-import lombok.Setter;
-
-
-@Getter
-@Setter
-public class DatabaseContainer {
-
-    private String containerID;
-
-    private String created;
-
-    private String containerName;
-
-    private String dbName;
-
-    private String status;
-
-    private String ipAddress;
-
-}
-- 
GitLab