Bootstrapping the Application hexagon
The Application hexagon orchestrates internal requests through the Domain hexagon and external requests through the Framework hexagon. We construct the system's features based on the domain model provided by the Domain hexagon with ports and use cases. In the Application hexagon, we don't specify any constraint or business rule. Instead, our aim for the Application hexagon is to define and control the data flow in the hexagonal system.
To continue developing the topology and inventory system, we have to bootstrap the Application hexagon as a Maven and Java module. Let's start with the Maven configuration:
mvn archetype:generate \ -DarchetypeGroupId=de.rieckpil.archetypes \ -DarchetypeArtifactId=testing-toolkit \ -DarchetypeVersion=1.0.0 \ -DgroupId=dev.davivieira \ -DartifactId=application \ -Dversion=1.0-SNAPSHOT \ -Dpackage=dev...