Added basic outline

This commit is contained in:
Marvin Scham
2023-05-20 05:51:51 +02:00
parent c213fc3f71
commit 1143097aee
25 changed files with 171 additions and 3 deletions

View File

@@ -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!");
}
}

View File

@@ -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);
}

View File

@@ -0,0 +1,6 @@
/**
* API client connectors for interaction with external data sources.
*
* @since 0.1.0
*/
package de.rwu.easydrop.api.client;

View File

@@ -0,0 +1,8 @@
package de.rwu.easydrop.api.dto;
/**
* Product data transfer object.
*/
public class ProductDTO {
}

View File

@@ -0,0 +1,6 @@
/**
* Data transfer objects for data derived from external sources.
*
* @since 0.1.0
*/
package de.rwu.easydrop.api.dto;

View File

@@ -0,0 +1,6 @@
/**
* Interaction with external APIs.
*
* @since 0.1.0
*/
package de.rwu.easydrop.api;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.data.connector;
public class DatabaseConnector {
}

View File

@@ -0,0 +1,6 @@
/**
* Connectors for databases.
*
* @todo implement
*/
package de.rwu.easydrop.data.connector;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.data.dao;
public class ProductDAO {
}

View File

@@ -0,0 +1,6 @@
/**
* Data access objects for business objects created from persistence.
*
* @todo implement
*/
package de.rwu.easydrop.data.dao;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.data.model;
public class Product {
}

View File

@@ -0,0 +1,6 @@
/**
* Business objects.
*
* @todo implement
*/
package de.rwu.easydrop.data.model;

View File

@@ -0,0 +1,6 @@
/**
* Structure for business objects and persisting their info.
*
* @todo implement
*/
package de.rwu.easydrop.data;

View File

@@ -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;

View File

@@ -0,0 +1,6 @@
/**
* One of the Top 2 dropshipping platforms around.
*
* @since 0.1.0
*/
package de.rwu.easydrop;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.service.mapping;
public class ProductMapper {
}

View File

@@ -0,0 +1,6 @@
/**
* Maps different formats of corresponding objects.
*
* @todo implement
*/
package de.rwu.easydrop.service.mapping;

View File

@@ -0,0 +1,6 @@
/**
* Packages for supporting business logic.
*
* @todo implement
*/
package de.rwu.easydrop.service;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.service.processing;
public class OrderManager {
}

View File

@@ -0,0 +1,6 @@
/**
* Supports diverse business processes and enforces business rules.
*
* @todo implement
*/
package de.rwu.easydrop.service.processing;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.service.validation;
public class ProductValidator {
}

View File

@@ -0,0 +1,6 @@
/**
* Supports validation processes.
*
* @todo implement
*/
package de.rwu.easydrop.service.validation;

View File

@@ -0,0 +1,5 @@
package de.rwu.easydrop.util;
public class FormattingUtil {
}

View File

@@ -0,0 +1,6 @@
/**
* General utility such as formatting helpers.
*
* @todo implement
*/
package de.rwu.easydrop.util;