├── .editorconfig ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── __snapshot__ ├── create a developer if it's a karumi developer.snap └── retrieve by id.snap ├── _config.yml ├── admin-server ├── .gitignore ├── build.gradle ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── src │ └── main │ ├── kotlin │ └── com │ │ └── karumi │ │ └── admin │ │ └── server │ │ └── AdminServerApplication.kt │ └── resources │ └── application.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle ├── src ├── main │ ├── kotlin │ │ └── com │ │ │ └── karumi │ │ │ └── springbootkotlin │ │ │ ├── Application.kt │ │ │ ├── SwaggerConfig.kt │ │ │ ├── authentication │ │ │ ├── api │ │ │ │ ├── AuthController.kt │ │ │ │ └── model.kt │ │ │ └── domain │ │ │ │ └── usecase │ │ │ │ ├── LoginDeveloper.kt │ │ │ │ └── RegisterDeveloper.kt │ │ │ ├── common │ │ │ ├── TryLogger.kt │ │ │ └── extensions.kt │ │ │ ├── developers │ │ │ ├── api │ │ │ │ ├── DeveloperController.kt │ │ │ │ └── model.kt │ │ │ ├── domain │ │ │ │ ├── DeveloperValidator.kt │ │ │ │ ├── model.kt │ │ │ │ └── usecase │ │ │ │ │ ├── CreateKarumiDeveloper.kt │ │ │ │ │ └── GetDeveloper.kt │ │ │ └── storage │ │ │ │ ├── DeveloperDao.kt │ │ │ │ └── entity.kt │ │ │ ├── security │ │ │ ├── CustomUserDetailsService.kt │ │ │ ├── JwtAuthenticationEntryPoint.kt │ │ │ ├── SecurityConfig.kt │ │ │ ├── SecurityUser.kt │ │ │ ├── TokenAuthenticationFilter.kt │ │ │ └── TokenHelper.kt │ │ │ └── workers │ │ │ └── SimpleScheduler.kt │ ├── requests │ │ ├── Actuator.http │ │ ├── Authentication.http │ │ ├── DeveloperController.http │ │ └── http-client.env.json │ └── resources │ │ └── application.properties └── test │ ├── kotlin │ └── com │ │ └── karumi │ │ └── springbootkotlin │ │ ├── MockCustomUser.kt │ │ ├── controllers │ │ ├── DeveloperControllerTest.kt │ │ ├── DeveloperControllerTestMockUser.kt │ │ └── DeveloperControllerUsingMvcMock.kt │ │ ├── developers │ │ └── storage │ │ │ ├── DeveloperRepositoryTest.kt │ │ │ └── kotlintestconfig.kt │ │ ├── extensions.kt │ │ └── given │ │ └── GivenDeveloper.kt │ └── resources │ ├── BadDeveloperBody.json │ ├── CreateDeveloper.json │ ├── CreateKarumiDeveloper.json │ ├── ExpectedDeveloper.json │ ├── ExpectedNewDeveloper.json │ └── LoginRequest.json └── travis.yml /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/README.md -------------------------------------------------------------------------------- /__snapshot__/create a developer if it's a karumi developer.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/__snapshot__/create a developer if it's a karumi developer.snap -------------------------------------------------------------------------------- /__snapshot__/retrieve by id.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/__snapshot__/retrieve by id.snap -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/_config.yml -------------------------------------------------------------------------------- /admin-server/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/.gitignore -------------------------------------------------------------------------------- /admin-server/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/build.gradle -------------------------------------------------------------------------------- /admin-server/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /admin-server/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /admin-server/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/gradlew -------------------------------------------------------------------------------- /admin-server/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/gradlew.bat -------------------------------------------------------------------------------- /admin-server/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/settings.gradle -------------------------------------------------------------------------------- /admin-server/src/main/kotlin/com/karumi/admin/server/AdminServerApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/src/main/kotlin/com/karumi/admin/server/AdminServerApplication.kt -------------------------------------------------------------------------------- /admin-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/admin-server/src/main/resources/application.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'spring-boot-kotlin' 2 | 3 | -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/Application.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/Application.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/SwaggerConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/SwaggerConfig.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/authentication/api/AuthController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/authentication/api/AuthController.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/authentication/api/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/authentication/api/model.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/authentication/domain/usecase/LoginDeveloper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/authentication/domain/usecase/LoginDeveloper.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/authentication/domain/usecase/RegisterDeveloper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/authentication/domain/usecase/RegisterDeveloper.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/common/TryLogger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/common/TryLogger.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/common/extensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/common/extensions.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/api/DeveloperController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/api/DeveloperController.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/api/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/api/model.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/domain/DeveloperValidator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/domain/DeveloperValidator.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/domain/model.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/domain/model.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/domain/usecase/CreateKarumiDeveloper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/domain/usecase/CreateKarumiDeveloper.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/domain/usecase/GetDeveloper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/domain/usecase/GetDeveloper.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/storage/DeveloperDao.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/storage/DeveloperDao.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/developers/storage/entity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/developers/storage/entity.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/CustomUserDetailsService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/CustomUserDetailsService.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/JwtAuthenticationEntryPoint.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/JwtAuthenticationEntryPoint.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/SecurityConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/SecurityConfig.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/SecurityUser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/SecurityUser.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/TokenAuthenticationFilter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/TokenAuthenticationFilter.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/security/TokenHelper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/security/TokenHelper.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/karumi/springbootkotlin/workers/SimpleScheduler.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/kotlin/com/karumi/springbootkotlin/workers/SimpleScheduler.kt -------------------------------------------------------------------------------- /src/main/requests/Actuator.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/requests/Actuator.http -------------------------------------------------------------------------------- /src/main/requests/Authentication.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/requests/Authentication.http -------------------------------------------------------------------------------- /src/main/requests/DeveloperController.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/requests/DeveloperController.http -------------------------------------------------------------------------------- /src/main/requests/http-client.env.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/requests/http-client.env.json -------------------------------------------------------------------------------- /src/main/resources/application.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/main/resources/application.properties -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/MockCustomUser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/MockCustomUser.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerTest.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerTestMockUser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerTestMockUser.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerUsingMvcMock.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/controllers/DeveloperControllerUsingMvcMock.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/developers/storage/DeveloperRepositoryTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/developers/storage/DeveloperRepositoryTest.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/developers/storage/kotlintestconfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/developers/storage/kotlintestconfig.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/extensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/extensions.kt -------------------------------------------------------------------------------- /src/test/kotlin/com/karumi/springbootkotlin/given/GivenDeveloper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/kotlin/com/karumi/springbootkotlin/given/GivenDeveloper.kt -------------------------------------------------------------------------------- /src/test/resources/BadDeveloperBody.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /src/test/resources/CreateDeveloper.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/resources/CreateDeveloper.json -------------------------------------------------------------------------------- /src/test/resources/CreateKarumiDeveloper.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/resources/CreateKarumiDeveloper.json -------------------------------------------------------------------------------- /src/test/resources/ExpectedDeveloper.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/resources/ExpectedDeveloper.json -------------------------------------------------------------------------------- /src/test/resources/ExpectedNewDeveloper.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/resources/ExpectedNewDeveloper.json -------------------------------------------------------------------------------- /src/test/resources/LoginRequest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/src/test/resources/LoginRequest.json -------------------------------------------------------------------------------- /travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Karumi/SpringBootKotlin/HEAD/travis.yml --------------------------------------------------------------------------------