├── .gitignore ├── README.md ├── docs ├── clean_architecture │ ├── clean_architecture.drawio │ └── clean_architecture.png ├── domainstorytelling │ ├── Daily Family Tradegy.dst │ └── Daily Family Tradegy.png ├── eventstorming │ ├── DDD Setup - DDD Stickies Template.jpg │ ├── DDD Setup - DDD Stickies Template_small.jpg │ ├── DDD Setup - Event Storming - Todo Management.jpg │ └── eventsorming.md ├── onion_architecture │ ├── onion_architure.drawio │ └── onion_architure.png └── uml │ ├── domain-objects.png │ ├── uml.md │ └── usecases.png ├── gradle ├── test-acceptance.gradle ├── test-architecture.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── src ├── main ├── java │ ├── common │ │ ├── architecture │ │ │ ├── Adapter.java │ │ │ ├── Command.java │ │ │ ├── Port.java │ │ │ └── UseCase.java │ │ └── eventbus │ │ │ ├── EventPublisher.java │ │ │ ├── EventReceiver.java │ │ │ └── impl │ │ │ ├── AbstractEventReceiverImpl.java │ │ │ └── EventPublisherImpl.java │ └── todo │ │ ├── Application.java │ │ ├── adapter │ │ ├── in │ │ │ ├── events │ │ │ │ ├── ReceiveTodoAddedEventGuavaAdapter.java │ │ │ │ ├── ReceiveTodoDoneEventGuavaAdapter.java │ │ │ │ └── ReceiveTodoListCreatedEventGuavaAdapter.java │ │ │ └── rest │ │ │ │ ├── TodoRestController.java │ │ │ │ └── model │ │ │ │ ├── AddTodoRequest.java │ │ │ │ ├── AddTodoResponse.java │ │ │ │ ├── CreateTodolistRequest.java │ │ │ │ ├── GetAllUndoneTodosResponse.java │ │ │ │ └── MappingUtil.java │ │ └── out │ │ │ ├── db │ │ │ └── TodoListListInMemoryRepository.java │ │ │ └── events │ │ │ ├── SendTodoAddedEventGuavaAdapter.java │ │ │ ├── SendTodoDoneEventGuavaAdapter.java │ │ │ └── SendTodoListCreatedEventGuavaAdapter.java │ │ ├── application │ │ ├── service │ │ │ ├── AddTodoImpl.java │ │ │ ├── CreateTodoListImpl.java │ │ │ ├── GetTodoDoneImpl.java │ │ │ └── ReadingTodosImpl.java │ │ └── usecase │ │ │ ├── AddTodo.java │ │ │ ├── CreateTodoList.java │ │ │ ├── GetTodoDone.java │ │ │ └── ReadingTodos.java │ │ ├── config │ │ ├── ApplicationConfig.java │ │ └── InfrastructureConfig.java │ │ └── domain │ │ ├── command │ │ ├── AddTodoCommand.java │ │ ├── CreateTodoListCommand.java │ │ ├── GetTodoDoneCommand.java │ │ └── ReadTodosCommand.java │ │ ├── event │ │ ├── TodoAddedEvent.java │ │ ├── TodoDoneEvent.java │ │ └── TodoListCreatedEvent.java │ │ ├── exception │ │ ├── MaxNumberOfTodosExceedException.java │ │ ├── TodoListAlreadyExistsException.java │ │ └── UserDoesNotExistException.java │ │ ├── model │ │ ├── Todo.java │ │ ├── TodoId.java │ │ ├── TodoList.java │ │ └── UserId.java │ │ └── port │ │ ├── in │ │ ├── ReceiveTodoAddedEventPort.java │ │ ├── ReceiveTodoDoneEventPort.java │ │ └── ReceiveTodoListCreatedEventPort.java │ │ └── out │ │ ├── LoadTodoListPort.java │ │ ├── SaveTodoListPort.java │ │ ├── SendTodoAddedEventPort.java │ │ ├── SendTodoDoneEventPort.java │ │ └── SendTodoListCreatedEventPort.java └── resources │ └── application.yml ├── test-acceptance ├── java │ └── todo │ │ ├── ToDoStepDefs.java │ │ └── TodoUseCaseAcceptanceTest.java └── resources │ └── todo │ ├── adding_todos.feature │ ├── getting_todo_done.feature │ └── reading_todos.feature ├── test-architecture └── java │ ├── archtest │ ├── OnionArchitecture.java │ └── PackageType.java │ └── todo │ ├── DddApplicationTest.java │ ├── DddArchitectureTest.java │ ├── DddDomainTest.java │ └── DddInfrastructureTest.java └── test └── java └── todo └── infrastructure └── adapter └── db └── TodoListInMemoryRepositoryTest.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/README.md -------------------------------------------------------------------------------- /docs/clean_architecture/clean_architecture.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/clean_architecture/clean_architecture.drawio -------------------------------------------------------------------------------- /docs/clean_architecture/clean_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/clean_architecture/clean_architecture.png -------------------------------------------------------------------------------- /docs/domainstorytelling/Daily Family Tradegy.dst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/domainstorytelling/Daily Family Tradegy.dst -------------------------------------------------------------------------------- /docs/domainstorytelling/Daily Family Tradegy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/domainstorytelling/Daily Family Tradegy.png -------------------------------------------------------------------------------- /docs/eventstorming/DDD Setup - DDD Stickies Template.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/eventstorming/DDD Setup - DDD Stickies Template.jpg -------------------------------------------------------------------------------- /docs/eventstorming/DDD Setup - DDD Stickies Template_small.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/eventstorming/DDD Setup - DDD Stickies Template_small.jpg -------------------------------------------------------------------------------- /docs/eventstorming/DDD Setup - Event Storming - Todo Management.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/eventstorming/DDD Setup - Event Storming - Todo Management.jpg -------------------------------------------------------------------------------- /docs/eventstorming/eventsorming.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/eventstorming/eventsorming.md -------------------------------------------------------------------------------- /docs/onion_architecture/onion_architure.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/onion_architecture/onion_architure.drawio -------------------------------------------------------------------------------- /docs/onion_architecture/onion_architure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/onion_architecture/onion_architure.png -------------------------------------------------------------------------------- /docs/uml/domain-objects.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/uml/domain-objects.png -------------------------------------------------------------------------------- /docs/uml/uml.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/uml/uml.md -------------------------------------------------------------------------------- /docs/uml/usecases.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/docs/uml/usecases.png -------------------------------------------------------------------------------- /gradle/test-acceptance.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradle/test-acceptance.gradle -------------------------------------------------------------------------------- /gradle/test-architecture.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradle/test-architecture.gradle -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/settings.gradle -------------------------------------------------------------------------------- /src/main/java/common/architecture/Adapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/architecture/Adapter.java -------------------------------------------------------------------------------- /src/main/java/common/architecture/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/architecture/Command.java -------------------------------------------------------------------------------- /src/main/java/common/architecture/Port.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/architecture/Port.java -------------------------------------------------------------------------------- /src/main/java/common/architecture/UseCase.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/architecture/UseCase.java -------------------------------------------------------------------------------- /src/main/java/common/eventbus/EventPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/eventbus/EventPublisher.java -------------------------------------------------------------------------------- /src/main/java/common/eventbus/EventReceiver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/eventbus/EventReceiver.java -------------------------------------------------------------------------------- /src/main/java/common/eventbus/impl/AbstractEventReceiverImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/eventbus/impl/AbstractEventReceiverImpl.java -------------------------------------------------------------------------------- /src/main/java/common/eventbus/impl/EventPublisherImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/common/eventbus/impl/EventPublisherImpl.java -------------------------------------------------------------------------------- /src/main/java/todo/Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/Application.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/events/ReceiveTodoAddedEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/events/ReceiveTodoAddedEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/events/ReceiveTodoDoneEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/events/ReceiveTodoDoneEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/events/ReceiveTodoListCreatedEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/events/ReceiveTodoListCreatedEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/TodoRestController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/TodoRestController.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/model/AddTodoRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/model/AddTodoRequest.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/model/AddTodoResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/model/AddTodoResponse.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/model/CreateTodolistRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/model/CreateTodolistRequest.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/model/GetAllUndoneTodosResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/model/GetAllUndoneTodosResponse.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/in/rest/model/MappingUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/in/rest/model/MappingUtil.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/out/db/TodoListListInMemoryRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/out/db/TodoListListInMemoryRepository.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/out/events/SendTodoAddedEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/out/events/SendTodoAddedEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/out/events/SendTodoDoneEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/out/events/SendTodoDoneEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/adapter/out/events/SendTodoListCreatedEventGuavaAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/adapter/out/events/SendTodoListCreatedEventGuavaAdapter.java -------------------------------------------------------------------------------- /src/main/java/todo/application/service/AddTodoImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/service/AddTodoImpl.java -------------------------------------------------------------------------------- /src/main/java/todo/application/service/CreateTodoListImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/service/CreateTodoListImpl.java -------------------------------------------------------------------------------- /src/main/java/todo/application/service/GetTodoDoneImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/service/GetTodoDoneImpl.java -------------------------------------------------------------------------------- /src/main/java/todo/application/service/ReadingTodosImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/service/ReadingTodosImpl.java -------------------------------------------------------------------------------- /src/main/java/todo/application/usecase/AddTodo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/usecase/AddTodo.java -------------------------------------------------------------------------------- /src/main/java/todo/application/usecase/CreateTodoList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/usecase/CreateTodoList.java -------------------------------------------------------------------------------- /src/main/java/todo/application/usecase/GetTodoDone.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/usecase/GetTodoDone.java -------------------------------------------------------------------------------- /src/main/java/todo/application/usecase/ReadingTodos.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/application/usecase/ReadingTodos.java -------------------------------------------------------------------------------- /src/main/java/todo/config/ApplicationConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/config/ApplicationConfig.java -------------------------------------------------------------------------------- /src/main/java/todo/config/InfrastructureConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/config/InfrastructureConfig.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/command/AddTodoCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/command/AddTodoCommand.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/command/CreateTodoListCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/command/CreateTodoListCommand.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/command/GetTodoDoneCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/command/GetTodoDoneCommand.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/command/ReadTodosCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/command/ReadTodosCommand.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/event/TodoAddedEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/event/TodoAddedEvent.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/event/TodoDoneEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/event/TodoDoneEvent.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/event/TodoListCreatedEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/event/TodoListCreatedEvent.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/exception/MaxNumberOfTodosExceedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/exception/MaxNumberOfTodosExceedException.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/exception/TodoListAlreadyExistsException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/exception/TodoListAlreadyExistsException.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/exception/UserDoesNotExistException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/exception/UserDoesNotExistException.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/model/Todo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/model/Todo.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/model/TodoId.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/model/TodoId.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/model/TodoList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/model/TodoList.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/model/UserId.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/model/UserId.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/in/ReceiveTodoAddedEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/in/ReceiveTodoAddedEventPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/in/ReceiveTodoDoneEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/in/ReceiveTodoDoneEventPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/in/ReceiveTodoListCreatedEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/in/ReceiveTodoListCreatedEventPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/out/LoadTodoListPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/out/LoadTodoListPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/out/SaveTodoListPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/out/SaveTodoListPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/out/SendTodoAddedEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/out/SendTodoAddedEventPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/out/SendTodoDoneEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/out/SendTodoDoneEventPort.java -------------------------------------------------------------------------------- /src/main/java/todo/domain/port/out/SendTodoListCreatedEventPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/main/java/todo/domain/port/out/SendTodoListCreatedEventPort.java -------------------------------------------------------------------------------- /src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/test-acceptance/java/todo/ToDoStepDefs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-acceptance/java/todo/ToDoStepDefs.java -------------------------------------------------------------------------------- /src/test-acceptance/java/todo/TodoUseCaseAcceptanceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-acceptance/java/todo/TodoUseCaseAcceptanceTest.java -------------------------------------------------------------------------------- /src/test-acceptance/resources/todo/adding_todos.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-acceptance/resources/todo/adding_todos.feature -------------------------------------------------------------------------------- /src/test-acceptance/resources/todo/getting_todo_done.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-acceptance/resources/todo/getting_todo_done.feature -------------------------------------------------------------------------------- /src/test-acceptance/resources/todo/reading_todos.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-acceptance/resources/todo/reading_todos.feature -------------------------------------------------------------------------------- /src/test-architecture/java/archtest/OnionArchitecture.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/archtest/OnionArchitecture.java -------------------------------------------------------------------------------- /src/test-architecture/java/archtest/PackageType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/archtest/PackageType.java -------------------------------------------------------------------------------- /src/test-architecture/java/todo/DddApplicationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/todo/DddApplicationTest.java -------------------------------------------------------------------------------- /src/test-architecture/java/todo/DddArchitectureTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/todo/DddArchitectureTest.java -------------------------------------------------------------------------------- /src/test-architecture/java/todo/DddDomainTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/todo/DddDomainTest.java -------------------------------------------------------------------------------- /src/test-architecture/java/todo/DddInfrastructureTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test-architecture/java/todo/DddInfrastructureTest.java -------------------------------------------------------------------------------- /src/test/java/todo/infrastructure/adapter/db/TodoListInMemoryRepositoryTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sneufeind/hexagonal-architecture-example-java/HEAD/src/test/java/todo/infrastructure/adapter/db/TodoListInMemoryRepositoryTest.java --------------------------------------------------------------------------------