├── .gitignore ├── .mvn └── wrapper │ ├── maven-wrapper.jar │ └── maven-wrapper.properties ├── Dockerfile ├── Makefile ├── README.md ├── docker-compose.local.yaml ├── docker-compose.yaml ├── k8s └── microservice │ ├── .helmignore │ ├── Chart.yaml │ ├── templates │ ├── microservice.yaml │ ├── postgres.yaml │ ├── redis.yaml │ └── zipkin.yaml │ └── values.yaml ├── monitoring └── prometheus.yml ├── mvnw ├── mvnw.cmd ├── pom.xml └── src ├── main ├── kotlin │ └── com │ │ └── alexbryksin │ │ └── microservice │ │ ├── KotlinSpringMicroserviceApplication.kt │ │ ├── configuration │ │ ├── Serializer.kt │ │ └── SwaggerOpenAPIConfiguration.kt │ │ ├── controllers │ │ ├── BankAccountController.kt │ │ └── GlobalControllerAdvice.kt │ │ ├── domain │ │ ├── BankAccount.kt │ │ └── Currency.kt │ │ ├── dto │ │ ├── CreateBankAccountRequest.kt │ │ ├── DepositAmountRequest.kt │ │ └── SuccessBankAccountResponse.kt │ │ ├── exceptions │ │ ├── BankAccountNotFoundException.kt │ │ ├── ErrorHttpResponse.kt │ │ └── InvalidAmountException.kt │ │ ├── repositories │ │ ├── BankAccountPostgresRepository.kt │ │ ├── BankAccountPostgresRepositoryImpl.kt │ │ ├── BankAccountRepository.kt │ │ ├── RedisCacheRepository.kt │ │ └── RedisCacheRepositoryImpl.kt │ │ └── services │ │ ├── BankAccountService.kt │ │ └── BankAccountServiceImpl.kt └── resources │ ├── application.properties │ └── db │ └── migration │ └── V1__initial_setup.sql └── test └── kotlin └── com └── alexbryksin └── microservice └── KotlinSpringMicroserviceApplicationTests.kt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/.gitignore -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/.mvn/wrapper/maven-wrapper.properties -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/Dockerfile -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/README.md -------------------------------------------------------------------------------- /docker-compose.local.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/docker-compose.local.yaml -------------------------------------------------------------------------------- /docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/docker-compose.yaml -------------------------------------------------------------------------------- /k8s/microservice/.helmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/.helmignore -------------------------------------------------------------------------------- /k8s/microservice/Chart.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/Chart.yaml -------------------------------------------------------------------------------- /k8s/microservice/templates/microservice.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/templates/microservice.yaml -------------------------------------------------------------------------------- /k8s/microservice/templates/postgres.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/templates/postgres.yaml -------------------------------------------------------------------------------- /k8s/microservice/templates/redis.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/templates/redis.yaml -------------------------------------------------------------------------------- /k8s/microservice/templates/zipkin.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/templates/zipkin.yaml -------------------------------------------------------------------------------- /k8s/microservice/values.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/k8s/microservice/values.yaml -------------------------------------------------------------------------------- /monitoring/prometheus.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/monitoring/prometheus.yml -------------------------------------------------------------------------------- /mvnw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/mvnw -------------------------------------------------------------------------------- /mvnw.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/mvnw.cmd -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/KotlinSpringMicroserviceApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/KotlinSpringMicroserviceApplication.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/configuration/Serializer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/configuration/Serializer.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/configuration/SwaggerOpenAPIConfiguration.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/configuration/SwaggerOpenAPIConfiguration.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/controllers/BankAccountController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/controllers/BankAccountController.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/controllers/GlobalControllerAdvice.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/controllers/GlobalControllerAdvice.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/domain/BankAccount.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/domain/BankAccount.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/domain/Currency.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/domain/Currency.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/dto/CreateBankAccountRequest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/dto/CreateBankAccountRequest.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/dto/DepositAmountRequest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/dto/DepositAmountRequest.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/dto/SuccessBankAccountResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/dto/SuccessBankAccountResponse.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/exceptions/BankAccountNotFoundException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/exceptions/BankAccountNotFoundException.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/exceptions/ErrorHttpResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/exceptions/ErrorHttpResponse.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/exceptions/InvalidAmountException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/exceptions/InvalidAmountException.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountPostgresRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountPostgresRepository.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountPostgresRepositoryImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountPostgresRepositoryImpl.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/repositories/BankAccountRepository.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/repositories/RedisCacheRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/repositories/RedisCacheRepository.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/repositories/RedisCacheRepositoryImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/repositories/RedisCacheRepositoryImpl.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/services/BankAccountService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/services/BankAccountService.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/alexbryksin/microservice/services/BankAccountServiceImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/kotlin/com/alexbryksin/microservice/services/BankAccountServiceImpl.kt -------------------------------------------------------------------------------- /src/main/resources/application.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/resources/application.properties -------------------------------------------------------------------------------- /src/main/resources/db/migration/V1__initial_setup.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/main/resources/db/migration/V1__initial_setup.sql -------------------------------------------------------------------------------- /src/test/kotlin/com/alexbryksin/microservice/KotlinSpringMicroserviceApplicationTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AleksK1NG/Kotlin-Spring-Postgres-Redis-Microservice/HEAD/src/test/kotlin/com/alexbryksin/microservice/KotlinSpringMicroserviceApplicationTests.kt --------------------------------------------------------------------------------