From 1143097aeeb7567add9ed05b6672535a1180f7cc Mon Sep 17 00:00:00 2001 From: Marvin Scham Date: Sat, 20 May 2023 05:51:51 +0200 Subject: [PATCH] Added basic outline --- pom.xml | 2 +- src/main/java/de/rwu/easydrop/Main.java | 24 +++++++++++++++++++ .../rwu/easydrop/api/client/DataSource.java | 23 ++++++++++++++++++ .../rwu/easydrop/api/client/package-info.java | 6 +++++ .../de/rwu/easydrop/api/dto/ProductDTO.java | 8 +++++++ .../de/rwu/easydrop/api/dto/package-info.java | 6 +++++ .../de/rwu/easydrop/api/package-info.java | 6 +++++ .../data/connector/DatabaseConnector.java | 5 ++++ .../easydrop/data/connector/package-info.java | 6 +++++ .../de/rwu/easydrop/data/dao/ProductDAO.java | 5 ++++ .../rwu/easydrop/data/dao/package-info.java | 6 +++++ .../de/rwu/easydrop/data/model/Product.java | 5 ++++ .../rwu/easydrop/data/model/package-info.java | 6 +++++ .../de/rwu/easydrop/data/package-info.java | 6 +++++ .../de/rwu/easydrop/demo/package-info.java | 4 ++-- .../java/de/rwu/easydrop/package-info.java | 6 +++++ .../service/mapping/ProductMapper.java | 5 ++++ .../service/mapping/package-info.java | 6 +++++ .../de/rwu/easydrop/service/package-info.java | 6 +++++ .../service/processing/OrderManager.java | 5 ++++ .../service/processing/package-info.java | 6 +++++ .../service/validation/ProductValidator.java | 5 ++++ .../service/validation/package-info.java | 6 +++++ .../de/rwu/easydrop/util/FormattingUtil.java | 5 ++++ .../de/rwu/easydrop/util/package-info.java | 6 +++++ 25 files changed, 171 insertions(+), 3 deletions(-) create mode 100644 src/main/java/de/rwu/easydrop/Main.java create mode 100644 src/main/java/de/rwu/easydrop/api/client/DataSource.java create mode 100644 src/main/java/de/rwu/easydrop/api/client/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java create mode 100644 src/main/java/de/rwu/easydrop/api/dto/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/api/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java create mode 100644 src/main/java/de/rwu/easydrop/data/connector/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java create mode 100644 src/main/java/de/rwu/easydrop/data/dao/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/data/model/Product.java create mode 100644 src/main/java/de/rwu/easydrop/data/model/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/data/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java create mode 100644 src/main/java/de/rwu/easydrop/service/mapping/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/service/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/service/processing/OrderManager.java create mode 100644 src/main/java/de/rwu/easydrop/service/processing/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java create mode 100644 src/main/java/de/rwu/easydrop/service/validation/package-info.java create mode 100644 src/main/java/de/rwu/easydrop/util/FormattingUtil.java create mode 100644 src/main/java/de/rwu/easydrop/util/package-info.java diff --git a/pom.xml b/pom.xml index 880badf..a9a4243 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ de.rwu easydrop jar - 0.1-SNAPSHOT + 0.1.0-SNAPSHOT EasyDrop http://maven.apache.org diff --git a/src/main/java/de/rwu/easydrop/Main.java b/src/main/java/de/rwu/easydrop/Main.java new file mode 100644 index 0000000..608bcd0 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/Main.java @@ -0,0 +1,24 @@ +package de.rwu.easydrop; + +/** + * Kickoff point for the service. + * + * @since 0.1.0 + */ +public final class Main { + /** + * Prevents unwanted instantiation. + */ + private Main() { + throw new UnsupportedOperationException("Don't instantiate me! >:("); + } + + /** + * Application entrypoint. + * + * @param args + */ + public static void main(final String[] args) { + System.out.println("I'm alive!"); + } +} diff --git a/src/main/java/de/rwu/easydrop/api/client/DataSource.java b/src/main/java/de/rwu/easydrop/api/client/DataSource.java new file mode 100644 index 0000000..740c173 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/api/client/DataSource.java @@ -0,0 +1,23 @@ +package de.rwu.easydrop.api.client; + +import de.rwu.easydrop.api.dto.ProductDTO; + +/** + * Universal interface to implement concrete APIs on. + */ +public interface DataSource { + /** + * Retrieves product info from the data source. + * + * @param productId Identifier + * @return ProductDTO + */ + ProductDTO getProductById(String productId); + + /** + * Breaks the connection after specified time. + * + * @param timeoutSeconds Seconds to time out after + */ + void setConnectionTimeout(int timeoutSeconds); +} diff --git a/src/main/java/de/rwu/easydrop/api/client/package-info.java b/src/main/java/de/rwu/easydrop/api/client/package-info.java new file mode 100644 index 0000000..b4040d6 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/api/client/package-info.java @@ -0,0 +1,6 @@ +/** + * API client connectors for interaction with external data sources. + * + * @since 0.1.0 + */ +package de.rwu.easydrop.api.client; diff --git a/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java b/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java new file mode 100644 index 0000000..a8d8dfc --- /dev/null +++ b/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java @@ -0,0 +1,8 @@ +package de.rwu.easydrop.api.dto; + +/** + * Product data transfer object. + */ +public class ProductDTO { + +} diff --git a/src/main/java/de/rwu/easydrop/api/dto/package-info.java b/src/main/java/de/rwu/easydrop/api/dto/package-info.java new file mode 100644 index 0000000..7d4f621 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/api/dto/package-info.java @@ -0,0 +1,6 @@ +/** + * Data transfer objects for data derived from external sources. + * + * @since 0.1.0 + */ +package de.rwu.easydrop.api.dto; diff --git a/src/main/java/de/rwu/easydrop/api/package-info.java b/src/main/java/de/rwu/easydrop/api/package-info.java new file mode 100644 index 0000000..5c0f1cf --- /dev/null +++ b/src/main/java/de/rwu/easydrop/api/package-info.java @@ -0,0 +1,6 @@ +/** + * Interaction with external APIs. + * + * @since 0.1.0 + */ +package de.rwu.easydrop.api; diff --git a/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java b/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java new file mode 100644 index 0000000..cd933d8 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.data.connector; + +public class DatabaseConnector { + +} diff --git a/src/main/java/de/rwu/easydrop/data/connector/package-info.java b/src/main/java/de/rwu/easydrop/data/connector/package-info.java new file mode 100644 index 0000000..fe11513 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/connector/package-info.java @@ -0,0 +1,6 @@ +/** + * Connectors for databases. + * + * @todo implement + */ +package de.rwu.easydrop.data.connector; diff --git a/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java b/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java new file mode 100644 index 0000000..e981caa --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.data.dao; + +public class ProductDAO { + +} diff --git a/src/main/java/de/rwu/easydrop/data/dao/package-info.java b/src/main/java/de/rwu/easydrop/data/dao/package-info.java new file mode 100644 index 0000000..8ca4719 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/dao/package-info.java @@ -0,0 +1,6 @@ +/** + * Data access objects for business objects created from persistence. + * + * @todo implement + */ +package de.rwu.easydrop.data.dao; diff --git a/src/main/java/de/rwu/easydrop/data/model/Product.java b/src/main/java/de/rwu/easydrop/data/model/Product.java new file mode 100644 index 0000000..e637c33 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/model/Product.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.data.model; + +public class Product { + +} diff --git a/src/main/java/de/rwu/easydrop/data/model/package-info.java b/src/main/java/de/rwu/easydrop/data/model/package-info.java new file mode 100644 index 0000000..ed9879b --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/model/package-info.java @@ -0,0 +1,6 @@ +/** + * Business objects. + * + * @todo implement + */ +package de.rwu.easydrop.data.model; diff --git a/src/main/java/de/rwu/easydrop/data/package-info.java b/src/main/java/de/rwu/easydrop/data/package-info.java new file mode 100644 index 0000000..8d4e6b7 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/data/package-info.java @@ -0,0 +1,6 @@ +/** + * Structure for business objects and persisting their info. + * + * @todo implement + */ +package de.rwu.easydrop.data; diff --git a/src/main/java/de/rwu/easydrop/demo/package-info.java b/src/main/java/de/rwu/easydrop/demo/package-info.java index 01c1a1b..d4537c6 100644 --- a/src/main/java/de/rwu/easydrop/demo/package-info.java +++ b/src/main/java/de/rwu/easydrop/demo/package-info.java @@ -1,6 +1,6 @@ /** - * Dieses Paket beinhaltet ist zu Demo-Zwecken. + * Package for demo purposes. * - * @since 0.1-SNAPSHOT + * @todo implement */ package de.rwu.easydrop.demo; diff --git a/src/main/java/de/rwu/easydrop/package-info.java b/src/main/java/de/rwu/easydrop/package-info.java new file mode 100644 index 0000000..9d9a0d1 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/package-info.java @@ -0,0 +1,6 @@ +/** + * One of the Top 2 dropshipping platforms around. + * + * @since 0.1.0 + */ +package de.rwu.easydrop; diff --git a/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java b/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java new file mode 100644 index 0000000..7f006d8 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.service.mapping; + +public class ProductMapper { + +} diff --git a/src/main/java/de/rwu/easydrop/service/mapping/package-info.java b/src/main/java/de/rwu/easydrop/service/mapping/package-info.java new file mode 100644 index 0000000..c7ef687 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/mapping/package-info.java @@ -0,0 +1,6 @@ +/** + * Maps different formats of corresponding objects. + * + * @todo implement + */ +package de.rwu.easydrop.service.mapping; diff --git a/src/main/java/de/rwu/easydrop/service/package-info.java b/src/main/java/de/rwu/easydrop/service/package-info.java new file mode 100644 index 0000000..5c1e2fc --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/package-info.java @@ -0,0 +1,6 @@ +/** + * Packages for supporting business logic. + * + * @todo implement + */ +package de.rwu.easydrop.service; diff --git a/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java b/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java new file mode 100644 index 0000000..36d391f --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.service.processing; + +public class OrderManager { + +} diff --git a/src/main/java/de/rwu/easydrop/service/processing/package-info.java b/src/main/java/de/rwu/easydrop/service/processing/package-info.java new file mode 100644 index 0000000..1348cce --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/processing/package-info.java @@ -0,0 +1,6 @@ +/** + * Supports diverse business processes and enforces business rules. + * + * @todo implement + */ +package de.rwu.easydrop.service.processing; diff --git a/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java b/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java new file mode 100644 index 0000000..292aeda --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.service.validation; + +public class ProductValidator { + +} diff --git a/src/main/java/de/rwu/easydrop/service/validation/package-info.java b/src/main/java/de/rwu/easydrop/service/validation/package-info.java new file mode 100644 index 0000000..7333014 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/service/validation/package-info.java @@ -0,0 +1,6 @@ +/** + * Supports validation processes. + * + * @todo implement + */ +package de.rwu.easydrop.service.validation; diff --git a/src/main/java/de/rwu/easydrop/util/FormattingUtil.java b/src/main/java/de/rwu/easydrop/util/FormattingUtil.java new file mode 100644 index 0000000..abf0551 --- /dev/null +++ b/src/main/java/de/rwu/easydrop/util/FormattingUtil.java @@ -0,0 +1,5 @@ +package de.rwu.easydrop.util; + +public class FormattingUtil { + +} diff --git a/src/main/java/de/rwu/easydrop/util/package-info.java b/src/main/java/de/rwu/easydrop/util/package-info.java new file mode 100644 index 0000000..c5417ed --- /dev/null +++ b/src/main/java/de/rwu/easydrop/util/package-info.java @@ -0,0 +1,6 @@ +/** + * General utility such as formatting helpers. + * + * @todo implement + */ +package de.rwu.easydrop.util;