├── Chapter07 ├── KotlinBasics │ ├── test │ ├── .idea │ │ ├── encodings.xml │ │ ├── codeStyles │ │ │ ├── codeStyleConfig.xml │ │ │ └── Project.xml │ │ ├── misc.xml │ │ ├── modules.xml │ │ └── kotlinc.xml │ ├── src │ │ └── com │ │ │ └── nilangpatel │ │ │ └── kotlin │ │ │ ├── interoperability │ │ │ ├── CheckInterOperability.kt │ │ │ ├── KotlinFile.kt │ │ │ └── JavaFile.java │ │ │ ├── dataclasses │ │ │ ├── StudentVOKotlin.kt │ │ │ └── DataClassesDemo.kt │ │ │ ├── smartcast │ │ │ ├── CastExampleKotlin.kt │ │ │ └── CastExampleJava.java │ │ │ └── function │ │ │ ├── defaultarg │ │ │ └── CubeVolume.kt │ │ │ └── extension │ │ │ └── FunExtension.kt │ ├── out │ │ └── production │ │ │ └── KotlinBasics │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── kotlin │ │ │ ├── dataclasses │ │ │ ├── StudentVOJava.class │ │ │ ├── StudentVOKotlin.class │ │ │ └── DataClassesDemoKt.class │ │ │ ├── function │ │ │ ├── lamda │ │ │ │ ├── Applicant.class │ │ │ │ ├── LamdaDemo1Kt.class │ │ │ │ ├── LamdaDemo2Kt.class │ │ │ │ ├── LamdaDemo1Kt$main$1.class │ │ │ │ ├── LamdaDemo1Kt$main$addition$1.class │ │ │ │ ├── LamdaDemo1Kt$main$addition2$1.class │ │ │ │ ├── LamdaDemo1Kt$main$greetingMsg$1.class │ │ │ │ ├── LamdaDemo1Kt$main$showWarning$1.class │ │ │ │ ├── LamdaDemo2Kt$main$isEligible$1.class │ │ │ │ └── LamdaDemo2Kt$main$isEligible2$1.class │ │ │ ├── returnfromotherfun │ │ │ │ ├── Dog.class │ │ │ │ ├── Fox.class │ │ │ │ ├── Lion.class │ │ │ │ ├── WildAnimal.class │ │ │ │ ├── ReturnFromOtherFunDemoKt.class │ │ │ │ ├── ReturnFromOtherFunDemoKt$getAnimalVoiceFun$1.class │ │ │ │ ├── ReturnFromOtherFunDemoKt$main$getAnimalVoice$1$1.class │ │ │ │ └── ReturnFromOtherFunDemoKt$main$getAnimalVoice$1.class │ │ │ ├── defaultarg │ │ │ │ └── CubeVolumeKt.class │ │ │ ├── extension │ │ │ │ └── FunExtensionKt.class │ │ │ └── expression │ │ │ │ └── Function_expressionKt.class │ │ │ ├── interoperability │ │ │ ├── JavaFile.class │ │ │ ├── KotlinFileKt.class │ │ │ └── CheckInterOperabilityKt.class │ │ │ ├── nullcheck │ │ │ └── NullCheckDemoKt.class │ │ │ ├── smartcast │ │ │ ├── CastExampleJava.class │ │ │ └── CastExampleKotlinKt.class │ │ │ └── operatoroverload │ │ │ ├── CoordinatePoint.class │ │ │ └── OperatorOverloadDemoKt.class │ └── KotlinBasics.iml ├── ReadMe.txt └── taskmanagementsystem │ ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.properties │ │ └── maven-wrapper.jar │ ├── src │ ├── main │ │ ├── kotlin │ │ │ └── com │ │ │ │ └── nilangpatel │ │ │ │ └── tms │ │ │ │ ├── dto │ │ │ │ ├── CommentDTO.kt │ │ │ │ ├── UserDTO.kt │ │ │ │ ├── UserRegistrationDTO.kt │ │ │ │ └── TaskDTO.kt │ │ │ │ ├── repository │ │ │ │ ├── UserRepository.kt │ │ │ │ ├── CommentRepository.kt │ │ │ │ └── RoleRepository.kt │ │ │ │ ├── TaskmanagementsystemApplication.kt │ │ │ │ ├── constant │ │ │ │ ├── TaskStatus.kt │ │ │ │ └── TaskMgmntConstant.kt │ │ │ │ └── model │ │ │ │ └── CustomGrantedAuthority.kt │ │ └── resources │ │ │ ├── static │ │ │ └── js │ │ │ │ └── tms.js │ │ │ └── templates │ │ │ ├── home.html │ │ │ ├── control-page.html │ │ │ └── users.html │ └── test │ │ └── kotlin │ │ └── com │ │ └── nilangpatel │ │ └── tms │ │ └── taskmanagementsystem │ │ └── TaskmanagementsystemApplicationTests.kt │ └── .gitignore ├── Chapter05 ├── gdp │ ├── .prettierignore │ ├── src │ │ ├── test │ │ │ ├── resources │ │ │ │ ├── i18n │ │ │ │ │ └── messages_en.properties │ │ │ │ └── templates │ │ │ │ │ └── mail │ │ │ │ │ └── testEmail.html │ │ │ ├── javascript │ │ │ │ ├── jest.ts │ │ │ │ ├── spec │ │ │ │ │ └── helpers │ │ │ │ │ │ ├── mock-alert.service.ts │ │ │ │ │ │ ├── mock-event-manager.service.ts │ │ │ │ │ │ ├── mock-active-modal.service.ts │ │ │ │ │ │ ├── mock-principal.service.ts │ │ │ │ │ │ ├── mock-state-storage.service.ts │ │ │ │ │ │ └── mock-account.service.ts │ │ │ │ └── jest-global-mocks.ts │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── nilangpatel │ │ │ │ ├── repository │ │ │ │ └── timezone │ │ │ │ │ └── DateTimeWrapperRepository.java │ │ │ │ └── config │ │ │ │ └── WebConfigurerTestController.java │ │ └── main │ │ │ ├── resources │ │ │ └── config │ │ │ │ ├── liquibase │ │ │ │ ├── authorities.csv │ │ │ │ ├── users_authorities.csv │ │ │ │ └── users.csv │ │ │ │ └── tls │ │ │ │ └── keystore.p12 │ │ │ ├── webapp │ │ │ ├── app │ │ │ │ ├── shared │ │ │ │ │ ├── constants │ │ │ │ │ │ ├── pagination.constants.ts │ │ │ │ │ │ ├── input.constants.ts │ │ │ │ │ │ └── error.constants.ts │ │ │ │ │ ├── model │ │ │ │ │ │ ├── chart.gdp.model.ts │ │ │ │ │ │ ├── city.model.ts │ │ │ │ │ │ └── country-language.model.ts │ │ │ │ │ ├── shared-common.module.ts │ │ │ │ │ ├── language │ │ │ │ │ │ └── find-language-from-key.pipe.ts │ │ │ │ │ ├── util │ │ │ │ │ │ └── request-util.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── admin │ │ │ │ │ ├── logs │ │ │ │ │ │ ├── log.model.ts │ │ │ │ │ │ └── logs.route.ts │ │ │ │ │ ├── audits │ │ │ │ │ │ ├── audit-data.model.ts │ │ │ │ │ │ ├── audit.model.ts │ │ │ │ │ │ └── audits.route.ts │ │ │ │ │ ├── docs │ │ │ │ │ │ ├── docs.component.html │ │ │ │ │ │ ├── docs.component.ts │ │ │ │ │ │ └── docs.route.ts │ │ │ │ │ ├── health │ │ │ │ │ │ └── health.route.ts │ │ │ │ │ ├── metrics │ │ │ │ │ │ ├── metrics.route.ts │ │ │ │ │ │ └── metrics.service.ts │ │ │ │ │ ├── configuration │ │ │ │ │ │ └── configuration.route.ts │ │ │ │ │ ├── admin.route.ts │ │ │ │ │ └── user-management │ │ │ │ │ │ └── user-management-detail.component.ts │ │ │ │ ├── home │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── home.route.ts │ │ │ │ │ └── home.module.ts │ │ │ │ ├── layouts │ │ │ │ │ ├── footer │ │ │ │ │ │ ├── footer.component.html │ │ │ │ │ │ └── footer.component.ts │ │ │ │ │ ├── profiles │ │ │ │ │ │ └── profile-info.model.ts │ │ │ │ │ ├── navbar │ │ │ │ │ │ └── navbar.route.ts │ │ │ │ │ ├── main │ │ │ │ │ │ └── main.component.html │ │ │ │ │ ├── index.ts │ │ │ │ │ └── error │ │ │ │ │ │ ├── error.route.ts │ │ │ │ │ │ └── error.component.html │ │ │ │ ├── account │ │ │ │ │ ├── sessions │ │ │ │ │ │ ├── session.model.ts │ │ │ │ │ │ └── sessions.route.ts │ │ │ │ │ ├── activate │ │ │ │ │ │ ├── activate.route.ts │ │ │ │ │ │ └── activate.service.ts │ │ │ │ │ ├── register │ │ │ │ │ │ ├── register.route.ts │ │ │ │ │ │ └── register.service.ts │ │ │ │ │ ├── password-reset │ │ │ │ │ │ ├── init │ │ │ │ │ │ │ ├── password-reset-init.route.ts │ │ │ │ │ │ │ └── password-reset-init.service.ts │ │ │ │ │ │ └── finish │ │ │ │ │ │ │ ├── password-reset-finish.route.ts │ │ │ │ │ │ │ └── password-reset-finish.service.ts │ │ │ │ │ ├── password │ │ │ │ │ │ ├── password.route.ts │ │ │ │ │ │ ├── password.service.ts │ │ │ │ │ │ └── password-strength-bar.scss │ │ │ │ │ ├── settings │ │ │ │ │ │ └── settings.route.ts │ │ │ │ │ └── account.route.ts │ │ │ │ ├── entities │ │ │ │ │ ├── city │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── city-detail.component.ts │ │ │ │ │ ├── country │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── country-detail.component.ts │ │ │ │ │ └── country-language │ │ │ │ │ │ └── index.ts │ │ │ │ ├── blocks │ │ │ │ │ └── config │ │ │ │ │ │ ├── prod.config.ts │ │ │ │ │ │ └── uib-pagination.config.ts │ │ │ │ ├── core │ │ │ │ │ ├── auth │ │ │ │ │ │ └── csrf.service.ts │ │ │ │ │ ├── user │ │ │ │ │ │ └── account.model.ts │ │ │ │ │ ├── language │ │ │ │ │ │ └── language.constants.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── core.module.ts │ │ │ │ ├── app.main.ts │ │ │ │ └── app.constants.ts │ │ │ ├── favicon.ico │ │ │ ├── content │ │ │ │ ├── images │ │ │ │ │ ├── hipster.png │ │ │ │ │ ├── hipster2x.png │ │ │ │ │ ├── hipster192.png │ │ │ │ │ ├── hipster256.png │ │ │ │ │ ├── hipster384.png │ │ │ │ │ ├── hipster512.png │ │ │ │ │ └── logo-jhipster.png │ │ │ │ └── scss │ │ │ │ │ └── vendor.scss │ │ │ ├── swagger-ui │ │ │ │ └── dist │ │ │ │ │ └── images │ │ │ │ │ └── throbber.gif │ │ │ ├── i18n │ │ │ │ └── en │ │ │ │ │ ├── trueFalse.json │ │ │ │ │ ├── configuration.json │ │ │ │ │ ├── logs.json │ │ │ │ │ ├── activate.json │ │ │ │ │ ├── password.json │ │ │ │ │ ├── continent.json │ │ │ │ │ ├── sessions.json │ │ │ │ │ ├── error.json │ │ │ │ │ └── login.json │ │ │ └── robots.txt │ │ │ ├── java │ │ │ └── com │ │ │ │ └── nilangpatel │ │ │ │ ├── domain │ │ │ │ ├── package-info.java │ │ │ │ ├── enumeration │ │ │ │ │ └── TrueFalse.java │ │ │ │ └── converter │ │ │ │ │ └── ContinentEnumConvertor.java │ │ │ │ ├── service │ │ │ │ ├── package-info.java │ │ │ │ ├── dto │ │ │ │ │ └── package-info.java │ │ │ │ └── mapper │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── EntityMapper.java │ │ │ │ ├── config │ │ │ │ ├── audit │ │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ ├── ApplicationProperties.java │ │ │ │ ├── Constants.java │ │ │ │ └── LoggingAspectConfiguration.java │ │ │ │ ├── security │ │ │ │ ├── package-info.java │ │ │ │ ├── AuthoritiesConstants.java │ │ │ │ ├── UserNotActivatedException.java │ │ │ │ └── SpringSecurityAuditorAware.java │ │ │ │ ├── web │ │ │ │ └── rest │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── vm │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── KeyAndPasswordVM.java │ │ │ │ │ └── errors │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── EmailAlreadyUsedException.java │ │ │ │ │ ├── LoginAlreadyUsedException.java │ │ │ │ │ ├── InvalidPasswordException.java │ │ │ │ │ ├── EmailNotFoundException.java │ │ │ │ │ └── InternalServerErrorException.java │ │ │ │ └── repository │ │ │ │ ├── package-info.java │ │ │ │ ├── AuthorityRepository.java │ │ │ │ ├── CityRepository.java │ │ │ │ ├── CountryRepository.java │ │ │ │ ├── CountryLanguageRepository.java │ │ │ │ └── PersistentTokenRepository.java │ │ │ ├── docker │ │ │ ├── sonar.yml │ │ │ ├── entrypoint.sh │ │ │ ├── .dockerignore │ │ │ ├── mysql.yml │ │ │ ├── Dockerfile │ │ │ └── app.yml │ │ │ └── jib │ │ │ └── entrypoint.sh │ ├── .huskyrc │ ├── postcss.config.js │ ├── webpack │ │ └── logo-jhipster.png │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── proxy.conf.json │ ├── .prettierrc │ └── .editorconfig └── ReadMe.txt ├── Chapter01 ├── worldgdp │ ├── .settings │ │ ├── org.eclipse.wst.jsdt.ui.superType.name │ │ ├── org.eclipse.wst.validation.prefs │ │ ├── org.eclipse.wst.jsdt.ui.superType.container │ │ ├── org.eclipse.m2e.core.prefs │ │ ├── org.eclipse.wst.common.project.facet.core.xml │ │ ├── org.eclipse.jdt.core.prefs │ │ ├── .jsdtscope │ │ └── org.eclipse.wst.common.component │ ├── target │ │ ├── m2e-wtp │ │ │ └── web-resources │ │ │ │ └── META-INF │ │ │ │ ├── MANIFEST.MF │ │ │ │ └── maven │ │ │ │ └── com.nilangpatel.worldgdp │ │ │ │ └── worldgdp │ │ │ │ └── pom.properties │ │ ├── classes │ │ │ ├── application.properties │ │ │ ├── com │ │ │ │ └── nilangpatel │ │ │ │ │ └── worldgdp │ │ │ │ │ ├── dao │ │ │ │ │ ├── CityDAO.class │ │ │ │ │ ├── LookupDAO.class │ │ │ │ │ ├── CountryDAO.class │ │ │ │ │ ├── CountryLanguageDAO.class │ │ │ │ │ └── mapper │ │ │ │ │ │ ├── CityRowMapper.class │ │ │ │ │ │ ├── CountryRowMapper.class │ │ │ │ │ │ └── CountryLanguageRowMapper.class │ │ │ │ │ ├── model │ │ │ │ │ ├── City.class │ │ │ │ │ ├── Country.class │ │ │ │ │ ├── CountryGDP.class │ │ │ │ │ └── CountryLanguage.class │ │ │ │ │ ├── AppConfiguration.class │ │ │ │ │ ├── config │ │ │ │ │ ├── DBConfiguration.class │ │ │ │ │ ├── ViewConfiguration.class │ │ │ │ │ └── PropertiesWithJavaConfig.class │ │ │ │ │ ├── WorldApplicationInitializer.class │ │ │ │ │ ├── external │ │ │ │ │ └── WorldBankApiClient.class │ │ │ │ │ └── controller │ │ │ │ │ ├── view │ │ │ │ │ └── ViewController.class │ │ │ │ │ └── api │ │ │ │ │ ├── CityAPIController.class │ │ │ │ │ ├── CountryAPIController.class │ │ │ │ │ └── CountryLanguageAPIController.class │ │ │ └── logback.xml │ │ ├── test-classes │ │ │ └── com │ │ │ │ └── nilangpatel │ │ │ │ └── test │ │ │ │ ├── dao │ │ │ │ ├── CityDAOTest.class │ │ │ │ ├── LookupDAOTest.class │ │ │ │ ├── CountryDAOTest.class │ │ │ │ └── CountryLanguageDAOTest.class │ │ │ │ ├── config │ │ │ │ ├── DBConfigurationTest.class │ │ │ │ ├── TestDBConfiguration.class │ │ │ │ └── controller │ │ │ │ │ └── api │ │ │ │ │ ├── CityAPIControllerTest.class │ │ │ │ │ ├── CountryAPIControllerTest.class │ │ │ │ │ └── CountryLanguageAPIControllerTest.class │ │ │ │ └── external │ │ │ │ └── WorldBankApiClientTest.class │ │ ├── maven-status │ │ │ └── maven-compiler-plugin │ │ │ │ └── testCompile │ │ │ │ └── default-testCompile │ │ │ │ └── createdFiles.lst │ │ └── surefire-reports │ │ │ ├── com.nilangpatel.test.dao.CityDAOTest.txt │ │ │ ├── com.nilangpatel.test.dao.CountryDAOTest.txt │ │ │ ├── com.nilangpatel.test.dao.LookupDAOTest.txt │ │ │ ├── com.nilangpatel.test.config.DBConfigurationTest.txt │ │ │ ├── com.nilangpatel.test.dao.CountryLanguageDAOTest.txt │ │ │ ├── com.nilangpatel.test.external.WorldBankApiClientTest.txt │ │ │ ├── com.nilangpatel.test.config.controller.api.CityAPIControllerTest.txt │ │ │ ├── com.nilangpatel.test.config.controller.api.CountryAPIControllerTest.txt │ │ │ └── com.nilangpatel.test.config.controller.api.CountryLanguageAPIControllerTest.txt │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ ├── webapp │ │ ├── static │ │ │ └── css │ │ │ │ └── style.css │ │ └── WEB-INF │ │ │ └── web.xml │ │ └── java │ │ └── com │ │ └── nilangpatel │ │ └── worldgdp │ │ ├── model │ │ └── CountryGDP.java │ │ ├── WorldApplicationInitializer.java │ │ ├── config │ │ └── PropertiesWithJavaConfig.java │ │ └── dao │ │ └── mapper │ │ └── CityRowMapper.java └── ReadMe.txt ├── Chapter06 ├── spring-cloud-config-server │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── bootstrap.properties │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── spring │ │ │ │ └── cloud │ │ │ │ └── config │ │ │ │ └── SpringCloudConfigServerApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── spring │ │ │ └── cloud │ │ │ └── config │ │ │ └── SpringCloudConfigServerApplicationTests.java │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ └── .gitignore ├── book-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── book │ │ │ │ ├── repository │ │ │ │ ├── BookRepository.java │ │ │ │ ├── CategoryRepository.java │ │ │ │ └── PublisherRepository.java │ │ │ │ └── BookServiceApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── book │ │ │ └── BookServiceApplicationTests.java │ └── .gitignore ├── user-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── user │ │ │ │ ├── repository │ │ │ │ ├── CustomUserRepository.java │ │ │ │ └── UserRepository.java │ │ │ │ └── config │ │ │ │ └── UserConfiguration.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── user │ │ │ └── UserServiceApplicationTests.java │ └── .gitignore ├── catalog-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── application.properties │ │ │ │ └── bootstrap.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── catalog │ │ │ │ ├── repository │ │ │ │ ├── BookRepository.java │ │ │ │ ├── CategoryRepository.java │ │ │ │ └── PublisherRepository.java │ │ │ │ └── CatalogServiceApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── book │ │ │ └── BookServiceApplicationTests.java │ └── .gitignore ├── order-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── order │ │ │ │ ├── repository │ │ │ │ └── OrderRepository.java │ │ │ │ └── OrderServiceApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── order │ │ │ └── OrderServiceApplicationTests.java │ └── .gitignore ├── inventory-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── src │ │ ├── main │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── inventory │ │ │ │ └── repository │ │ │ │ └── InventoryRepository.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── inventory │ │ │ └── InventoryServiceApplicationTests.java │ └── .gitignore ├── zuul-api-gateway │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.jar │ │ │ └── maven-wrapper.properties │ ├── .gitignore │ └── src │ │ └── test │ │ └── java │ │ └── com │ │ └── zuul │ │ └── apigateway │ │ └── ZuulApiGatewayApplicationTests.java ├── eureka-discovery-service │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── eureka │ │ │ │ └── discovery │ │ │ │ └── EurekaDiscoveryServiceApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── eureka │ │ │ └── discovery │ │ │ └── EurekaDiscoveryServiceApplicationTests.java │ └── .gitignore ├── bookstore-authorization-server │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── bookstore │ │ │ │ └── auth │ │ │ │ ├── controller │ │ │ │ └── WebMvcController.java │ │ │ │ ├── user │ │ │ │ └── repository │ │ │ │ │ └── UserRepository.java │ │ │ │ └── BookstoreAuthorizationServerApplication.java │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── bookstore │ │ │ └── auth │ │ │ └── BookstoreAuthorizationServerApplicationTests.java │ └── .gitignore └── ReadMe.txt ├── Chapter03 ├── ReadMe.txt └── blogpress │ ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties │ ├── src │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── static │ │ │ ├── js │ │ │ └── blogpress.js │ │ │ └── css │ │ │ └── blogpress.css │ │ └── java │ │ └── com │ │ └── nilangpatel │ │ └── blogpress │ │ ├── constants │ │ ├── BlogStatus.java │ │ └── CommentStatus.java │ │ ├── BlogpressApplication.java │ │ ├── ServletInitializer.java │ │ ├── repository │ │ ├── BlogRepository.java │ │ └── BlogRepositoryCustom.java │ │ └── util │ │ └── BlogpressCommentComparator.java │ └── .gitignore ├── Chapter04 ├── SpringCustomAuthorization │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ ├── static │ │ │ │ └── css │ │ │ │ │ └── blogpress.css │ │ │ └── templates │ │ │ │ └── private-page.html │ │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── springcustomauth │ │ │ └── ServletInitializer.java │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ └── .gitignore ├── SpringAuthResource │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── templates │ │ │ │ ├── authorize.html │ │ │ │ └── private-page.html │ │ │ ├── application.properties │ │ │ └── static │ │ │ │ └── css │ │ │ │ └── blogpress.css │ │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── springauthresource │ │ │ ├── SpringAuthResourceApplication.java │ │ │ ├── ServletInitializer.java │ │ │ └── model │ │ │ └── SampleUser.java │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ └── .gitignore ├── SpringOnlyLDAP │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ ├── static │ │ │ │ └── css │ │ │ │ │ └── blogpress.css │ │ │ └── templates │ │ │ │ ├── home.html │ │ │ │ └── private-page.html │ │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── springldap │ │ │ ├── constants │ │ │ ├── PwdEncodingAlgo.java │ │ │ └── LdapAuthConstant.java │ │ │ ├── SpringLdapApplication.java │ │ │ └── ServletInitializer.java │ └── .gitignore ├── SpringOnlyOAuth │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── static │ │ │ │ └── css │ │ │ │ │ └── blogpress.css │ │ │ └── templates │ │ │ │ ├── home.html │ │ │ │ └── private-page.html │ │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── springoauth │ │ │ ├── constants │ │ │ └── OAuthConstant.java │ │ │ ├── SpringOAuthApplication.java │ │ │ └── ServletInitializer.java │ └── .gitignore ├── SpringLdapAndOAuth │ ├── .mvn │ │ └── wrapper │ │ │ ├── maven-wrapper.properties │ │ │ └── maven-wrapper.jar │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── static │ │ │ │ └── css │ │ │ │ │ └── blogpress.css │ │ │ └── templates │ │ │ │ ├── user-page.html │ │ │ │ ├── home.html │ │ │ │ ├── admin-page.html │ │ │ │ └── private-page.html │ │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── springauth │ │ │ ├── constants │ │ │ ├── PwdEncodingAlgo.java │ │ │ └── LdapAuthConstant.java │ │ │ ├── SpringAuthApplication.java │ │ │ ├── repository │ │ │ └── LdapAuthRepository.java │ │ │ ├── model │ │ │ └── LdapGranntedAuthority.java │ │ │ └── ServletInitializer.java │ └── .gitignore └── ReadMe.txt └── Chapter02 ├── simple-reactor-demo ├── .settings │ └── org.eclipse.m2e.core.prefs ├── target │ └── classes │ │ ├── META-INF │ │ ├── MANIFEST.MF │ │ └── maven │ │ │ └── reactor-demo │ │ │ └── simple-reactor-demo │ │ │ ├── pom.properties │ │ │ └── pom.xml │ │ └── com │ │ └── nilangpatel │ │ └── reactor │ │ ├── ReactorBasic.class │ │ ├── ReactorCustomSubscriber.class │ │ ├── ReactorLifecycleMethods.class │ │ ├── ReactorFromOtherPublisher.class │ │ ├── ReactorWithSubscriberWays.class │ │ └── ReactorCustomSubscriber$CustomSubscriber.class ├── pom.xml └── .project ├── simple-rx-java-demo ├── .settings │ └── org.eclipse.m2e.core.prefs ├── target │ └── classes │ │ ├── META-INF │ │ ├── MANIFEST.MF │ │ └── maven │ │ │ └── rx-java │ │ │ └── simple-rx-java-demo │ │ │ ├── pom.properties │ │ │ └── pom.xml │ │ └── com │ │ └── nilangpatel │ │ └── rxjava │ │ ├── RxJavaBasics.class │ │ ├── EmployeeRating.class │ │ ├── RxJavaCreateDemo.class │ │ ├── RxJavaIterableDemo.class │ │ ├── RxJavaColdObservable.class │ │ ├── RxJavaHotObservable1.class │ │ ├── RxJavaHotObservable2.class │ │ ├── RxJavaCustomObserverDemo.class │ │ └── RxJavaCustomObserverDemo$1.class ├── pom.xml ├── .project └── src │ └── main │ └── java │ └── com │ └── nilangpatel │ └── rxjava │ └── RxJavaBasics.java ├── SpringWebFluxDemo ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties ├── src │ ├── main │ │ ├── resources │ │ │ └── application.properties │ │ └── java │ │ │ └── com │ │ │ └── nilangpatel │ │ │ └── webflux │ │ │ └── repository │ │ │ └── StudentMongoRepository.java │ └── test │ │ └── java │ │ └── com │ │ └── nilangpatel │ │ └── webflux │ │ └── SpringWebFluxDemoApplicationTests.java └── .gitignore └── ReadMe.txt /Chapter07/KotlinBasics/test: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Chapter05/gdp/.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | target 3 | -------------------------------------------------------------------------------- /Chapter01/worldgdp/.settings/org.eclipse.wst.jsdt.ui.superType.name: -------------------------------------------------------------------------------- 1 | Window -------------------------------------------------------------------------------- /Chapter06/spring-cloud-config-server/src/main/resources/bootstrap.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Chapter01/ReadMe.txt: -------------------------------------------------------------------------------- 1 | The folder worldgdp contain the project for showing GDP infromation -------------------------------------------------------------------------------- /Chapter05/ReadMe.txt: -------------------------------------------------------------------------------- 1 | The folder gdp contain JHipster code for running GDP application -------------------------------------------------------------------------------- /Chapter03/ReadMe.txt: -------------------------------------------------------------------------------- 1 | blogpress folder contains the Spring project for BlogPress application -------------------------------------------------------------------------------- /Chapter04/SpringCustomAuthorization/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=8081 -------------------------------------------------------------------------------- /Chapter05/gdp/src/test/resources/i18n/messages_en.properties: -------------------------------------------------------------------------------- 1 | email.test.title=test title 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/.huskyrc: -------------------------------------------------------------------------------- 1 | { 2 | "hooks": { 3 | "pre-commit": "lint-staged" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/resources/config/liquibase/authorities.csv: -------------------------------------------------------------------------------- 1 | name 2 | ROLE_ADMIN 3 | ROLE_USER 4 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/shared/constants/pagination.constants.ts: -------------------------------------------------------------------------------- 1 | export const ITEMS_PER_PAGE = 20; 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/test/javascript/jest.ts: -------------------------------------------------------------------------------- 1 | import 'jest-preset-angular'; 2 | import './jest-global-mocks'; 3 | -------------------------------------------------------------------------------- /Chapter01/worldgdp/.settings/org.eclipse.wst.validation.prefs: -------------------------------------------------------------------------------- 1 | disabled=06target 2 | eclipse.preferences.version=1 3 | -------------------------------------------------------------------------------- /Chapter01/worldgdp/.settings/org.eclipse.wst.jsdt.ui.superType.container: -------------------------------------------------------------------------------- 1 | org.eclipse.wst.jsdt.launching.baseBrowserLibrary -------------------------------------------------------------------------------- /Chapter05/gdp/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [ 3 | require('autoprefixer') 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /Chapter04/SpringAuthResource/src/main/resources/templates/authorize.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/domain/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * JPA domain objects. 3 | */ 4 | package com.nilangpatel.domain; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/shared/model/chart.gdp.model.ts: -------------------------------------------------------------------------------- 1 | export interface IGdpData { 2 | date?: number; 3 | value?: number; 4 | } 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/service/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Service layer beans. 3 | */ 4 | package com.nilangpatel.service; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/admin/logs/log.model.ts: -------------------------------------------------------------------------------- 1 | export class Log { 2 | constructor(public name: string, public level: string) {} 3 | } 4 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/favicon.ico -------------------------------------------------------------------------------- /Chapter05/gdp/webpack/logo-jhipster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/webpack/logo-jhipster.png -------------------------------------------------------------------------------- /Chapter01/worldgdp/.settings/org.eclipse.m2e.core.prefs: -------------------------------------------------------------------------------- 1 | activeProfiles= 2 | eclipse.preferences.version=1 3 | resolveWorkspaceProjects=true 4 | version=1 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/home/index.ts: -------------------------------------------------------------------------------- 1 | export * from './home.component'; 2 | export * from './home.route'; 3 | export * from './home.module'; 4 | -------------------------------------------------------------------------------- /Chapter05/gdp/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/config/audit/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Audit specific code. 3 | */ 4 | package com.nilangpatel.config.audit; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/security/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Spring Security configuration. 3 | */ 4 | package com.nilangpatel.security; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/service/dto/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Data Transfer Objects. 3 | */ 4 | package com.nilangpatel.service.dto; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/web/rest/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Spring MVC REST controllers. 3 | */ 4 | package com.nilangpatel.web.rest; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/layouts/footer/footer.component.html: -------------------------------------------------------------------------------- 1 |
4 | -------------------------------------------------------------------------------- /Chapter02/simple-reactor-demo/.settings/org.eclipse.m2e.core.prefs: -------------------------------------------------------------------------------- 1 | activeProfiles= 2 | eclipse.preferences.version=1 3 | resolveWorkspaceProjects=true 4 | version=1 5 | -------------------------------------------------------------------------------- /Chapter02/simple-rx-java-demo/.settings/org.eclipse.m2e.core.prefs: -------------------------------------------------------------------------------- 1 | activeProfiles= 2 | eclipse.preferences.version=1 3 | resolveWorkspaceProjects=true 4 | version=1 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/config/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Spring Framework configuration files. 3 | */ 4 | package com.nilangpatel.config; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/repository/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Spring Data JPA repositories. 3 | */ 4 | package com.nilangpatel.repository; 5 | -------------------------------------------------------------------------------- /Chapter03/blogpress/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter03/blogpress/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/blogpress/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.0/apache-maven-3.6.0-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/shared/constants/input.constants.ts: -------------------------------------------------------------------------------- 1 | export const DATE_FORMAT = 'YYYY-MM-DD'; 2 | export const DATE_TIME_FORMAT = 'YYYY-MM-DDTHH:mm'; 3 | -------------------------------------------------------------------------------- /Chapter04/SpringOnlyLDAP/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter04/SpringOnlyOAuth/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/proxy.conf.json: -------------------------------------------------------------------------------- 1 | { 2 | "*": { 3 | "target": "http://localhost:8080", 4 | "secure": false, 5 | "loglevel": "debug" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/test/resources/templates/mail/testEmail.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Chapter06/book-service/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/book-service/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/user-service/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/user-service/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/SpringLdapAndOAuth/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter04/SpringOnlyLDAP/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter04/SpringOnlyLDAP/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/SpringOnlyOAuth/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter04/SpringOnlyOAuth/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/resources/config/liquibase/users_authorities.csv: -------------------------------------------------------------------------------- 1 | user_id;authority_name 2 | 1;ROLE_ADMIN 3 | 1;ROLE_USER 4 | 3;ROLE_ADMIN 5 | 3;ROLE_USER 6 | 4;ROLE_USER 7 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/resources/config/tls/keystore.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/resources/config/tls/keystore.p12 -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/app/admin/audits/audit-data.model.ts: -------------------------------------------------------------------------------- 1 | export class AuditData { 2 | constructor(public remoteAddress: string, public sessionId: string) {} 3 | } 4 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster.png -------------------------------------------------------------------------------- /Chapter06/book-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter06/catalog-service/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/catalog-service/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/catalog-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter06/order-service/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/order-service/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/order-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter06/user-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter07/ReadMe.txt: -------------------------------------------------------------------------------- 1 | KotlinBasics - contains code for core Kotlin functionalities. 2 | taskmanagementsystem - contains code for Task management system build in Kotlin and Spring Boot -------------------------------------------------------------------------------- /Chapter02/SpringWebFluxDemo/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter02/SpringWebFluxDemo/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/SpringWebFluxDemo/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.0/apache-maven-3.6.0-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter02/simple-reactor-demo/target/classes/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Built-By: nilang 3 | Build-Jdk: 1.8.0_181 4 | Created-By: Maven Integration for Eclipse 5 | 6 | -------------------------------------------------------------------------------- /Chapter02/simple-rx-java-demo/target/classes/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Built-By: nilang 3 | Build-Jdk: 1.8.0_181 4 | Created-By: Maven Integration for Eclipse 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/SpringAuthResource/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/java/com/nilangpatel/web/rest/vm/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * View Models used by Spring MVC REST controllers. 3 | */ 4 | package com.nilangpatel.web.rest.vm; 5 | -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster2x.png -------------------------------------------------------------------------------- /Chapter06/inventory-service/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/inventory-service/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/inventory-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter06/zuul-api-gateway/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter06/zuul-api-gateway/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/zuul-api-gateway/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter07/taskmanagementsystem/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter01/worldgdp/target/m2e-wtp/web-resources/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Built-By: nilang 3 | Build-Jdk: 1.8.0_181 4 | Created-By: Maven Integration for Eclipse 5 | 6 | -------------------------------------------------------------------------------- /Chapter02/ReadMe.txt: -------------------------------------------------------------------------------- 1 | simple-reactor-demo - contains code for reactor API. 2 | simple-rx-java-demo - contains code for RxJava API. 3 | SpringWebFluxDemo - contains code for WebFlux in Spring. -------------------------------------------------------------------------------- /Chapter04/SpringAuthResource/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter04/SpringAuthResource/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/SpringCustomAuthorization/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter04/SpringLdapAndOAuth/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter04/SpringLdapAndOAuth/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster192.png -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster256.png -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster384.png -------------------------------------------------------------------------------- /Chapter05/gdp/src/main/webapp/content/images/hipster512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Spring-5.0-Projects/HEAD/Chapter05/gdp/src/main/webapp/content/images/hipster512.png -------------------------------------------------------------------------------- /Chapter06/eureka-discovery-service/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /Chapter07/KotlinBasics/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 |Welcome, This is home page of the application
11 |Welcome, This is User Pages
13 |Welcome, This is Private page
11 | 12 | 13 |
8 | * Properties are configured in the application.yml file.
9 | * See {@link io.github.jhipster.config.JHipsterProperties} for a good example.
10 | */
11 | @ConfigurationProperties(prefix = "application", ignoreUnknownFields = false)
12 | public class ApplicationProperties {
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/Chapter05/gdp/src/main/java/com/nilangpatel/web/rest/errors/EmailNotFoundException.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.web.rest.errors;
2 |
3 | import org.zalando.problem.AbstractThrowableProblem;
4 | import org.zalando.problem.Status;
5 |
6 | public class EmailNotFoundException extends AbstractThrowableProblem {
7 |
8 | private static final long serialVersionUID = 1L;
9 |
10 | public EmailNotFoundException() {
11 | super(ErrorConstants.EMAIL_NOT_FOUND_TYPE, "Email address not registered", Status.BAD_REQUEST);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Chapter06/spring-cloud-config-server/src/test/java/com/spring/cloud/config/SpringCloudConfigServerApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.spring.cloud.config;
2 |
3 | import org.junit.Test;
4 | import org.junit.runner.RunWith;
5 | import org.springframework.boot.test.context.SpringBootTest;
6 | import org.springframework.test.context.junit4.SpringRunner;
7 |
8 | @RunWith(SpringRunner.class)
9 | @SpringBootTest
10 | public class SpringCloudConfigServerApplicationTests {
11 |
12 | @Test
13 | public void contextLoads() {
14 | }
15 |
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/Chapter03/blogpress/src/main/java/com/nilangpatel/blogpress/ServletInitializer.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.blogpress;
2 |
3 | import org.springframework.boot.builder.SpringApplicationBuilder;
4 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
5 |
6 | public class ServletInitializer extends SpringBootServletInitializer {
7 |
8 | @Override
9 | protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
10 | return application.sources(BlogpressApplication.class);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Chapter06/bookstore-authorization-server/src/test/java/com/bookstore/auth/BookstoreAuthorizationServerApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.bookstore.auth;
2 |
3 | import org.junit.Test;
4 | import org.junit.runner.RunWith;
5 | import org.springframework.boot.test.context.SpringBootTest;
6 | import org.springframework.test.context.junit4.SpringRunner;
7 |
8 | @RunWith(SpringRunner.class)
9 | @SpringBootTest
10 | public class BookstoreAuthorizationServerApplicationTests {
11 |
12 | @Test
13 | public void contextLoads() {
14 | }
15 |
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/Chapter07/taskmanagementsystem/src/test/kotlin/com/nilangpatel/tms/taskmanagementsystem/TaskmanagementsystemApplicationTests.kt:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.tms.taskmanagementsystem
2 |
3 | import org.junit.Test
4 | import org.junit.runner.RunWith
5 | import org.springframework.boot.test.context.SpringBootTest
6 | import org.springframework.test.context.junit4.SpringRunner
7 |
8 | @RunWith(SpringRunner::class)
9 | @SpringBootTest
10 | class TaskmanagementsystemApplicationTests {
11 |
12 | @Test
13 | fun contextLoads() {
14 | }
15 |
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/Chapter01/worldgdp/.settings/org.eclipse.jdt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4 | org.eclipse.jdt.core.compiler.compliance=1.8
5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
8 | org.eclipse.jdt.core.compiler.release=disabled
9 | org.eclipse.jdt.core.compiler.source=1.8
10 |
--------------------------------------------------------------------------------
/Chapter05/gdp/src/main/docker/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM openjdk:8-jre-alpine
2 |
3 | ENV SPRING_OUTPUT_ANSI_ENABLED=ALWAYS \
4 | JHIPSTER_SLEEP=0 \
5 | JAVA_OPTS=""
6 |
7 | # Add a jhipster user to run our application so that it doesn't need to run as root
8 | RUN adduser -D -s /bin/sh jhipster
9 | WORKDIR /home/jhipster
10 |
11 | ADD entrypoint.sh entrypoint.sh
12 | RUN chmod 755 entrypoint.sh && chown jhipster:jhipster entrypoint.sh
13 | USER jhipster
14 |
15 | ENTRYPOINT ["./entrypoint.sh"]
16 |
17 | EXPOSE 8080
18 |
19 | ADD *.war app.war
20 |
21 |
--------------------------------------------------------------------------------
/Chapter05/gdp/src/main/java/com/nilangpatel/config/Constants.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.config;
2 |
3 | /**
4 | * Application constants.
5 | */
6 | public final class Constants {
7 |
8 | // Regex for acceptable logins
9 | public static final String LOGIN_REGEX = "^[_.@A-Za-z0-9-]*$";
10 |
11 | public static final String SYSTEM_ACCOUNT = "system";
12 | public static final String ANONYMOUS_USER = "anonymoususer";
13 | public static final String DEFAULT_LANGUAGE = "en";
14 |
15 | private Constants() {
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Chapter04/SpringOnlyLDAP/src/main/java/com/nilangpatel/springldap/ServletInitializer.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.springldap;
2 |
3 | import org.springframework.boot.builder.SpringApplicationBuilder;
4 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
5 |
6 | public class ServletInitializer extends SpringBootServletInitializer {
7 |
8 | @Override
9 | protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
10 | return application.sources(SpringLdapApplication.class);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Chapter04/SpringLdapAndOAuth/src/main/java/com/nilangpatel/springauth/ServletInitializer.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.springauth;
2 |
3 | import org.springframework.boot.builder.SpringApplicationBuilder;
4 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
5 |
6 | public class ServletInitializer extends SpringBootServletInitializer {
7 |
8 | @Override
9 | protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
10 | return application.sources(SpringAuthApplication.class);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Chapter04/SpringOnlyOAuth/src/main/java/com/nilangpatel/springoauth/ServletInitializer.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.springoauth;
2 |
3 | import org.springframework.boot.builder.SpringApplicationBuilder;
4 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
5 |
6 | public class ServletInitializer extends SpringBootServletInitializer {
7 |
8 | @Override
9 | protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
10 | return application.sources(SpringOAuthApplication.class);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Chapter05/gdp/src/main/webapp/app/shared/model/city.model.ts:
--------------------------------------------------------------------------------
1 | export interface ICity {
2 | id?: number;
3 | name?: string;
4 | distrct?: string;
5 | population?: number;
6 | countryName?: string;
7 | countryId?: number;
8 | }
9 |
10 | export class City implements ICity {
11 | constructor(
12 | public id?: number,
13 | public name?: string,
14 | public distrct?: string,
15 | public population?: number,
16 | public countryName?: string,
17 | public countryId?: number
18 | ) {}
19 | }
20 |
--------------------------------------------------------------------------------
/Chapter05/gdp/src/main/webapp/i18n/en/sessions.json:
--------------------------------------------------------------------------------
1 | {
2 | "sessions": {
3 | "title": "Active sessions for [{{username}}]",
4 | "table": {
5 | "ipaddress": "IP address",
6 | "useragent": "User Agent",
7 | "date": "Date",
8 | "button": "Invalidate"
9 | },
10 | "messages": {
11 | "success": "Session invalidated!",
12 | "error": "An error has occurred! The session could not be invalidated."
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Chapter03/blogpress/src/main/java/com/nilangpatel/blogpress/repository/BlogRepository.java:
--------------------------------------------------------------------------------
1 | package com.nilangpatel.blogpress.repository;
2 |
3 | import java.util.List;
4 |
5 | import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | import com.nilangpatel.blogpress.model.Blog;
9 |
10 | @Repository
11 | public interface BlogRepository extends ElasticsearchRepository Welcome, This is home page of the application Welcome, This is home page of the application Welcome, This is Admin Page Welcome, This is private page of the application Welcome, This is private page of the application Welcome, This is private page of the applicationHome Page
10 | Home Page
10 | Admin Page
12 | Private Page
12 | Private Page
12 | Private Page
12 | Error Page!
8 |
9 |