├── .gitignore ├── LICENSE ├── README.md ├── gradle.properties ├── gradle ├── checkstyle │ ├── checkstyle.gradle │ └── checkstyle.xml ├── dependency-check │ ├── dependency-check.gradle │ └── suppression.xml ├── git-hooks │ ├── git-hooks.gradle │ └── pre-push ├── jacoco.gradle ├── spotbugs │ ├── exclude.xml │ └── spotbugs.gradle ├── version-info.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── idea.sh ├── local-build.sh ├── publish.sh ├── settings.gradle └── src ├── main ├── java │ └── com │ │ └── ecommerce │ │ └── spring │ │ └── common │ │ ├── AsyncConfiguration.java │ │ ├── DefaultAsyncExceptionHandler.java │ │ ├── DistributedLockConfiguration.java │ │ ├── ObjectMapperConfiguration.java │ │ ├── SchedulingConfiguration.java │ │ ├── SwaggerConfiguration.java │ │ ├── event │ │ ├── DefaultDomainEventPublisher.java │ │ ├── DomainEventBackupPublishScheduler.java │ │ ├── DomainEventCommonConfiguration.java │ │ ├── DomainEventConsumeWrapper.java │ │ ├── messaging │ │ │ ├── kafka │ │ │ │ ├── EcommerceKafkaListener.java │ │ │ │ ├── EcommerceKafkaProperties.java │ │ │ │ ├── KafkaConfiguration.java │ │ │ │ ├── KafkaDomainEventConsumeAspect.java │ │ │ │ ├── KafkaDomainEventPublishAspect.java │ │ │ │ └── KafkaDomainEventSender.java │ │ │ └── rabbit │ │ │ │ ├── EcommerceRabbitListener.java │ │ │ │ ├── EcommerceRabbitProperties.java │ │ │ │ ├── RabbitConfiguration.java │ │ │ │ ├── RabbitDomainEventConsumeAspect.java │ │ │ │ ├── RabbitDomainEventPublishAspect.java │ │ │ │ └── RabbitDomainEventSender.java │ │ └── recording │ │ │ ├── jdbc │ │ │ ├── JdbcTemplateDomainEventConfiguration.java │ │ │ ├── JdbcTemplateDomainEventConsumeRecorder.java │ │ │ └── JdbcTemplateDomainEventDao.java │ │ │ └── mongo │ │ │ ├── MongoDomainEventConfiguration.java │ │ │ └── MongoDomainEventDao.java │ │ └── exception │ │ ├── DefaultRestErrorController.java │ │ ├── ErrorRepresentation.java │ │ ├── GlobalExceptionHandler.java │ │ ├── RequestValidationException.java │ │ └── SpringCommonErrorCode.java └── resources │ └── db │ └── migration │ └── V0__common.sql └── test └── java └── com └── ecommerce └── .gitkeep /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/checkstyle/checkstyle.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/checkstyle/checkstyle.gradle -------------------------------------------------------------------------------- /gradle/checkstyle/checkstyle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/checkstyle/checkstyle.xml -------------------------------------------------------------------------------- /gradle/dependency-check/dependency-check.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/dependency-check/dependency-check.gradle -------------------------------------------------------------------------------- /gradle/dependency-check/suppression.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/dependency-check/suppression.xml -------------------------------------------------------------------------------- /gradle/git-hooks/git-hooks.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/git-hooks/git-hooks.gradle -------------------------------------------------------------------------------- /gradle/git-hooks/pre-push: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/git-hooks/pre-push -------------------------------------------------------------------------------- /gradle/jacoco.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/jacoco.gradle -------------------------------------------------------------------------------- /gradle/spotbugs/exclude.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/spotbugs/exclude.xml -------------------------------------------------------------------------------- /gradle/spotbugs/spotbugs.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/spotbugs/spotbugs.gradle -------------------------------------------------------------------------------- /gradle/version-info.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/version-info.gradle -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/gradlew.bat -------------------------------------------------------------------------------- /idea.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/idea.sh -------------------------------------------------------------------------------- /local-build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ./gradlew clean build 4 | -------------------------------------------------------------------------------- /publish.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ./gradlew clean publish 4 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/settings.gradle -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/AsyncConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/AsyncConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/DefaultAsyncExceptionHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/DefaultAsyncExceptionHandler.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/DistributedLockConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/DistributedLockConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/ObjectMapperConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/ObjectMapperConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/SchedulingConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/SchedulingConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/SwaggerConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/SwaggerConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/DefaultDomainEventPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/DefaultDomainEventPublisher.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/DomainEventBackupPublishScheduler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/DomainEventBackupPublishScheduler.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/DomainEventCommonConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/DomainEventCommonConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/DomainEventConsumeWrapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/DomainEventConsumeWrapper.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/EcommerceKafkaListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/EcommerceKafkaListener.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/EcommerceKafkaProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/EcommerceKafkaProperties.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventConsumeAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventConsumeAspect.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventPublishAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventPublishAspect.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventSender.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/kafka/KafkaDomainEventSender.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/EcommerceRabbitListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/EcommerceRabbitListener.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/EcommerceRabbitProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/EcommerceRabbitProperties.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventConsumeAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventConsumeAspect.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventPublishAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventPublishAspect.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventSender.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/messaging/rabbit/RabbitDomainEventSender.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventConsumeRecorder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventConsumeRecorder.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventDao.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/recording/jdbc/JdbcTemplateDomainEventDao.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/recording/mongo/MongoDomainEventConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/recording/mongo/MongoDomainEventConfiguration.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/event/recording/mongo/MongoDomainEventDao.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/event/recording/mongo/MongoDomainEventDao.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/exception/DefaultRestErrorController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/exception/DefaultRestErrorController.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/exception/ErrorRepresentation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/exception/ErrorRepresentation.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/exception/GlobalExceptionHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/exception/GlobalExceptionHandler.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/exception/RequestValidationException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/exception/RequestValidationException.java -------------------------------------------------------------------------------- /src/main/java/com/ecommerce/spring/common/exception/SpringCommonErrorCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/java/com/ecommerce/spring/common/exception/SpringCommonErrorCode.java -------------------------------------------------------------------------------- /src/main/resources/db/migration/V0__common.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-commerce-sample/ecommerce-spring-common/HEAD/src/main/resources/db/migration/V0__common.sql -------------------------------------------------------------------------------- /src/test/java/com/ecommerce/.gitkeep: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------