generator-jhipster 8.4.0 → 8.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/README.md +3 -4
  2. package/dist/cli/commands.mjs +2 -0
  3. package/dist/cli/environment-builder.mjs +5 -0
  4. package/dist/cli/program.mjs +10 -4
  5. package/dist/generators/angular/entity-files-angular.js +6 -7
  6. package/dist/generators/angular/resources/package.json +20 -20
  7. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +4 -3
  8. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.service.spec.ts.ejs +3 -2
  9. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.spec.ts.ejs +4 -5
  10. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.service.spec.ts.ejs +3 -2
  11. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.spec.ts.ejs +6 -5
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +3 -6
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.service.spec.ts.ejs +3 -2
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.spec.ts.ejs +5 -5
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +3 -6
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.service.spec.ts.ejs +3 -2
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.spec.ts.ejs +2 -3
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +3 -6
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.service.spec.ts.ejs +3 -2
  20. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.spec.ts.ejs +3 -3
  21. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.spec.ts.ejs +3 -4
  22. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.spec.ts.ejs +3 -3
  23. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.spec.ts.ejs +3 -2
  24. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.spec.ts.ejs +4 -4
  25. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.service.spec.ts.ejs +3 -2
  26. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.spec.ts.ejs +3 -3
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.spec.ts.ejs +4 -3
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.service.spec.ts.ejs +3 -2
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.component.ts.ejs +1 -1
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +11 -11
  31. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.spec.ts.ejs +3 -3
  32. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.spec.ts.ejs +3 -2
  33. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.service.spec.ts.ejs +3 -2
  34. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +0 -2
  35. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.spec.ts.ejs +3 -3
  36. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +1 -1
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +3 -4
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/service/user-management.service.spec.ts.ejs +3 -3
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.spec.ts.ejs +3 -2
  40. package/dist/generators/angular/templates/src/main/webapp/app/app-page-title-strategy.ts.ejs +1 -1
  41. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +0 -1
  42. package/dist/generators/angular/templates/src/main/webapp/app/app.config.ts.ejs +2 -2
  43. package/dist/generators/angular/templates/src/main/webapp/app/config/uib-pagination.config.ts.ejs +1 -1
  44. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/account.service.spec.ts.ejs +7 -5
  45. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-jwt.service.spec.ts.ejs +3 -2
  46. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/user-route-access.service.ts.ejs +1 -1
  47. package/dist/generators/angular/templates/src/main/webapp/app/core/interceptor/auth-expired.interceptor.ts.ejs +3 -3
  48. package/dist/generators/angular/templates/src/main/webapp/app/core/interceptor/auth.interceptor.ts.ejs +2 -2
  49. package/dist/generators/angular/templates/src/main/webapp/app/core/interceptor/error-handler.interceptor.ts.ejs +1 -1
  50. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.spec.ts.ejs +6 -6
  51. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +0 -3
  52. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.spec.ts.ejs +3 -4
  53. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +2 -2
  54. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +1 -1
  55. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +2 -3
  56. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.ts.ejs +2 -2
  57. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +4 -5
  58. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.spec.ts.ejs +5 -3
  59. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +5 -6
  60. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.ts.ejs +11 -17
  61. package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.ts.ejs +2 -2
  62. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/active-menu.directive.ts.ejs +6 -6
  63. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +3 -3
  64. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.spec.ts.ejs +3 -2
  65. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +2 -2
  66. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +3 -4
  67. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +2 -2
  68. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.spec.ts.ejs +11 -9
  69. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.ts.ejs +3 -8
  70. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +6 -2
  71. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/find-language-from-key.pipe.ts.ejs +1 -1
  72. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translation.module.ts.ejs +2 -2
  73. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.spec.ts.ejs +10 -10
  74. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.ts.ejs +6 -7
  75. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.directive.spec.ts.ejs +4 -4
  76. package/dist/generators/angular/templates/src/main/webapp/content/scss/global.scss.ejs +2 -0
  77. package/dist/generators/app/generator.js +4 -13
  78. package/dist/generators/base/command.js +1 -0
  79. package/dist/generators/base/generator.js +22 -28
  80. package/dist/generators/base/internal/command.js +13 -0
  81. package/dist/generators/base/internal/index.js +1 -0
  82. package/dist/generators/base/priorities.js +12 -1
  83. package/dist/generators/base/shared-data.js +74 -2
  84. package/dist/generators/base/support/config.js +1 -1
  85. package/dist/generators/base/support/jhipster7-context.js +155 -52
  86. package/dist/generators/base-application/generator.js +15 -3
  87. package/dist/generators/base-application/priorities.js +1 -0
  88. package/dist/generators/base-application/support/prepare-entity.js +7 -8
  89. package/dist/generators/base-application/support/prepare-relationship.js +3 -2
  90. package/dist/generators/base-core/generator.js +132 -63
  91. package/dist/generators/bootstrap/generator.js +1 -1
  92. package/dist/generators/bootstrap/support/eslint-worker.js +14 -12
  93. package/dist/generators/bootstrap/support/multi-step-transform/template-file.js +6 -1
  94. package/dist/generators/bootstrap-application/generator.js +1 -1
  95. package/dist/generators/bootstrap-application-base/generator.js +7 -3
  96. package/dist/generators/bootstrap-application-client/generator.js +5 -1
  97. package/dist/generators/bootstrap-application-server/generator.js +1 -0
  98. package/dist/generators/ci-cd/generator.js +1 -1
  99. package/dist/generators/ci-cd/templates/docker-registry.yml.ejs +0 -1
  100. package/dist/generators/ci-cd/templates/jenkins/jenkins.yml.ejs +0 -1
  101. package/dist/generators/client/command.js +2 -2
  102. package/dist/generators/client/generator.js +2 -3
  103. package/dist/generators/client/generators/common/command.js +5 -0
  104. package/dist/generators/client/generators/common/generator.js +79 -0
  105. package/dist/generators/client/generators/common/index.js +20 -0
  106. package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/headers.ts.ejs +57 -0
  107. package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/problem-details.ts.ejs +51 -0
  108. package/dist/generators/client/resources/package.json +6 -6
  109. package/dist/generators/client/support/filter-entities.js +1 -1
  110. package/dist/generators/client/templates/.eslintignore.ejs +9 -5
  111. package/dist/generators/client/templates/README.md.jhi.client.ejs +29 -20
  112. package/dist/generators/client/templates/src/main/webapp/index.html.ejs +1 -1
  113. package/dist/generators/common/generator.js +5 -0
  114. package/dist/generators/common/resources/package.json +2 -2
  115. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/login-page.cy.ts.ejs +4 -4
  116. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/password-page.cy.ts.ejs +2 -2
  117. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/register-page.cy.ts.ejs +1 -1
  118. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/reset-password-page.cy.ts.ejs +1 -1
  119. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +10 -10
  120. package/dist/generators/docker/templates/docker/keycloak.yml.ejs +2 -1
  121. package/dist/generators/docker/templates/docker/mariadb.yml.ejs +1 -1
  122. package/dist/generators/docker/templates/docker/mysql.yml.ejs +1 -2
  123. package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +14 -3
  124. package/dist/generators/docker/templates/docker/realm-config/keycloak-health-check.sh +2 -2
  125. package/dist/generators/docker-compose/templates/docker-compose.yml.ejs +1 -0
  126. package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +14 -3
  127. package/dist/generators/docker-compose/templates/realm-config/keycloak-health-check.sh +2 -2
  128. package/dist/generators/entity/generator.js +2 -10
  129. package/dist/generators/entity/prompts.js +6 -11
  130. package/dist/generators/feign-client/templates/src/main/java/_package_/client/AuthorizationHeaderUtil.java.ejs +1 -1
  131. package/dist/generators/gatling/README.md +15 -0
  132. package/dist/generators/gatling/generator.js +0 -1
  133. package/dist/generators/gatling/templates/src/test/java/gatling/simulations/_entityClass_GatlingTest.java.ejs +2 -10
  134. package/dist/generators/generate-blueprint/command.js +16 -0
  135. package/dist/generators/generate-blueprint/files.js +11 -1
  136. package/dist/generators/generate-blueprint/generator.js +34 -17
  137. package/dist/generators/generate-blueprint/resources/package.json +3 -1
  138. package/dist/generators/generate-blueprint/templates/.blueprint/cli/commands.mjs.ejs +6 -0
  139. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +20 -0
  140. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs +9 -13
  141. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/build-matrix.mjs.ejs +22 -0
  142. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/generator.mjs.ejs +20 -0
  143. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/index.mjs.ejs +1 -0
  144. package/dist/generators/generate-blueprint/templates/.github/workflows/build-cache.yml.ejs +39 -0
  145. package/dist/generators/generate-blueprint/templates/.github/workflows/samples.yml.ejs +105 -0
  146. package/dist/generators/generate-blueprint/templates/.prettierignore.jhi.blueprint.ejs +1 -1
  147. package/dist/generators/generate-blueprint/templates/README.md.ejs +16 -8
  148. package/dist/generators/generate-blueprint/templates/eslint.config.js.ejs +33 -0
  149. package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +1 -0
  150. package/dist/generators/generator-constants.js +2 -2
  151. package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  152. package/dist/generators/heroku/generator.js +1 -1
  153. package/dist/generators/info/generator.js +1 -3
  154. package/dist/generators/info/support/extract-info.js +60 -0
  155. package/dist/generators/info/support/index.js +1 -0
  156. package/dist/generators/init/generator.js +2 -2
  157. package/dist/generators/init/resources/.node-version +1 -1
  158. package/dist/generators/init/resources/package.json +2 -2
  159. package/dist/generators/java/generators/bootstrap/generator.js +9 -2
  160. package/dist/generators/java/generators/build-tool/command.js +6 -3
  161. package/dist/generators/java/generators/domain/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +1 -5
  162. package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Asserts.java.ejs +3 -3
  163. package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +3 -3
  164. package/dist/generators/java/generators/node/templates/npmw +1 -5
  165. package/dist/generators/java/support/add-java-annotation.js +28 -7
  166. package/dist/generators/java/support/generated-annotation-transform.js +1 -1
  167. package/dist/generators/java/support/index.js +1 -1
  168. package/dist/generators/jdl/generator.js +7 -7
  169. package/dist/generators/kubernetes/files.js +1 -1
  170. package/dist/generators/kubernetes/templates/db/mysql.yml.ejs +1 -1
  171. package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +14 -3
  172. package/dist/generators/languages/generator.js +5 -2
  173. package/dist/generators/liquibase/templates/src/main/java/_package_/config/LiquibaseConfiguration.java.ejs +1 -1
  174. package/dist/generators/maven/command.js +15 -0
  175. package/dist/generators/maven/generator.js +6 -1
  176. package/dist/generators/maven/index.js +1 -0
  177. package/dist/generators/maven/internal/xml-store.js +7 -6
  178. package/dist/generators/maven/support/pom-store.js +24 -9
  179. package/dist/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +2 -2
  180. package/dist/generators/maven/templates/mvnw +185 -243
  181. package/dist/generators/maven/templates/mvnw.cmd +121 -180
  182. package/dist/generators/react/entity-files-react.js +7 -7
  183. package/dist/generators/react/generator.js +10 -0
  184. package/dist/generators/react/resources/package.json +28 -28
  185. package/dist/generators/react/templates/src/main/webapp/app/app.tsx.ejs +9 -0
  186. package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.spec.ts.ejs +1 -1
  187. package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.ts.ejs +1 -1
  188. package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.spec.ts.ejs +1 -1
  189. package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.ts.ejs +80 -87
  190. package/dist/generators/react/templates/src/main/webapp/app/config/store.ts.ejs +1 -1
  191. package/dist/generators/react/templates/src/main/webapp/app/config/translation.ts.ejs +4 -0
  192. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.tsx.ejs +3 -3
  193. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.reducer.ts.ejs +12 -7
  194. package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +15 -1
  195. package/dist/generators/react/templates/src/main/webapp/app/modules/login/login-redirect.tsx.ejs +4 -0
  196. package/dist/generators/react/templates/src/main/webapp/app/modules/login/logout.tsx.ejs +5 -3
  197. package/dist/generators/react/templates/src/main/webapp/app/routes.tsx.ejs +1 -1
  198. package/dist/generators/react/templates/src/main/webapp/app/shared/auth/private-route.spec.tsx.ejs +1 -1
  199. package/dist/generators/react/templates/src/main/webapp/app/shared/auth/private-route.tsx.ejs +1 -1
  200. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/header/header.tsx.ejs +0 -9
  201. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/menus/account.spec.tsx.ejs +1 -3
  202. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/menus/account.tsx.ejs +29 -6
  203. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +2 -3
  204. package/dist/generators/react/templates/src/main/webapp/app/shared/util/url-utils.ts.ejs +1 -1
  205. package/dist/generators/server/command.js +0 -11
  206. package/dist/generators/server/generator.js +16 -75
  207. package/dist/generators/server/jdl/application-definition.js +3 -1
  208. package/dist/generators/server/resources/Dockerfile +13 -13
  209. package/dist/generators/server/resources/gradle/libs.versions.toml +9 -7
  210. package/dist/generators/server/resources/pom.xml +16 -16
  211. package/dist/generators/server/support/config.js +4 -8
  212. package/dist/generators/server/support/prepare-entity.js +5 -6
  213. package/dist/generators/server/support/relationship.js +5 -2
  214. package/dist/generators/server/templates/build.gradle.ejs +5 -3
  215. package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +2 -1
  216. package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +2 -1
  217. package/dist/generators/server/templates/gradle.properties.ejs +1 -1
  218. package/dist/generators/server/templates/pom.xml.ejs +7 -31
  219. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/service/dto/_dtoClass_.java.ejs +1 -1
  220. package/dist/generators/server/templates/src/main/java/_package_/config/AsyncConfiguration.java.ejs +1 -1
  221. package/dist/generators/server/templates/src/main/java/_package_/config/Constants.java.ejs +0 -2
  222. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +1 -18
  223. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +1 -15
  224. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityJwtConfiguration.java.ejs +1 -21
  225. package/dist/generators/server/templates/src/main/java/_package_/config/WebConfigurer.java.ejs +1 -1
  226. package/dist/generators/server/templates/src/main/java/_package_/security/DomainUserDetailsService.java.ejs +1 -1
  227. package/dist/generators/server/templates/src/main/java/_package_/security/PersistentTokenRememberMeServices.java.ejs +1 -1
  228. package/dist/generators/server/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +65 -5
  229. package/dist/generators/server/templates/src/main/java/_package_/security/oauth2/AudienceValidator.java.ejs +1 -1
  230. package/dist/generators/server/templates/src/main/java/_package_/service/MailService.java.ejs +1 -1
  231. package/dist/generators/server/templates/src/main/java/_package_/service/dto/UserDTO.java.ejs +34 -0
  232. package/dist/generators/server/templates/src/main/java/_package_/service/mapper/UserMapper.java.ejs +8 -4
  233. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +1 -1
  234. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource_oauth2.java.ejs +1 -1
  235. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +44 -10
  236. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AuthenticateController.java.ejs +1 -1
  237. package/dist/generators/server/templates/src/main/resources/config/application-dev.yml.ejs +1 -1
  238. package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +60 -22
  239. package/dist/generators/server/templates/src/main/resources/config/bootstrap.yml.ejs +1 -1
  240. package/dist/generators/server/templates/src/main/resources/swagger/api.yml.ejs +1 -1
  241. package/dist/generators/server/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +31 -13
  242. package/dist/generators/server/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +84 -17
  243. package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +62 -6
  244. package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +22 -0
  245. package/dist/generators/server/templates/src/test/resources/config/application.yml.ejs +20 -10
  246. package/dist/generators/spring-boot/command.js +117 -6
  247. package/dist/generators/spring-boot/files.js +0 -5
  248. package/dist/generators/spring-boot/generator.js +44 -9
  249. package/dist/generators/spring-boot/prompts.js +6 -70
  250. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +374 -582
  251. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/UserService.java.ejs +1 -1
  252. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/_entityClass_QueryService.java.ejs +1 -1
  253. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/impl/_entityClass_ServiceImpl.java.ejs +1 -1
  254. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/web/rest/PublicUserResource.java.ejs +1 -1
  255. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/web/rest/UserResource.java.ejs +1 -1
  256. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/web/rest/_entityClass_Resource.java.ejs +1 -1
  257. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +47 -11
  258. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +60 -24
  259. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +195 -318
  260. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +58 -51
  261. package/dist/generators/spring-cache/internal/dependencies.js +2 -2
  262. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
  263. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +3 -3
  264. package/dist/generators/spring-cloud/generators/gateway/command.js +10 -1
  265. package/dist/generators/spring-cloud/generators/gateway/generator.js +13 -0
  266. package/dist/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.js +6 -0
  267. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/main/java/_package_/broker/KafkaConsumer_imperative.java.ejs +1 -1
  268. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/main/java/_package_/broker/KafkaConsumer_reactive.java.ejs +1 -1
  269. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/main/java/_package_/web/rest/KafkaResource_imperative.java.ejs +1 -1
  270. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/main/java/_package_/web/rest/KafkaResource_reactive.java.ejs +1 -1
  271. package/dist/generators/spring-data-cassandra/generator.js +2 -2
  272. package/dist/generators/spring-data-couchbase/templates/src/main/java/_package_/config/DatabaseConfiguration.java.ejs +1 -1
  273. package/dist/generators/spring-data-neo4j/templates/src/main/java/_package_/config/DatabaseConfiguration.java_neo4j.ejs +18 -2
  274. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/config/DatabaseConfiguration.java.ejs +1 -1
  275. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +3 -1
  276. package/dist/generators/vue/entity-files-vue.js +7 -7
  277. package/dist/generators/vue/resources/package.json +21 -21
  278. package/dist/generators/vue/templates/.eslintrc.cjs.ejs +7 -0
  279. package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.spec.ts.ejs +1 -1
  280. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-details.vue.ejs +1 -1
  281. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +1 -1
  282. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.vue.ejs +1 -1
  283. package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.spec.ts.ejs +8 -8
  284. package/dist/generators/vue/templates/src/main/webapp/app/shared/data/data-utils.service.spec.ts.ejs +1 -1
  285. package/dist/generators/vue/templates/tsconfig.app.json.ejs +1 -1
  286. package/dist/generators/vue/templates/vite.config.mts.ejs +5 -4
  287. package/dist/jdl/converters/jdl-to-json/jdl-to-json-basic-entity-converter.js +1 -1
  288. package/dist/jdl/converters/jdl-to-json/jdl-to-json-field-converter.js +4 -4
  289. package/dist/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.js +9 -9
  290. package/dist/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.js +2 -2
  291. package/dist/jdl/converters/json-to-jdl-application-converter.js +1 -1
  292. package/dist/jdl/converters/json-to-jdl-converter.js +6 -5
  293. package/dist/jdl/converters/json-to-jdl-entity-converter.js +14 -14
  294. package/dist/jdl/converters/json-to-jdl-option-converter.js +1 -2
  295. package/dist/jdl/converters/parsed-jdl-to-jdl-object/application-converter.js +1 -1
  296. package/dist/jdl/converters/parsed-jdl-to-jdl-object/option-converter.js +2 -2
  297. package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +7 -6
  298. package/dist/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.js +1 -1
  299. package/dist/jdl/exporters/applications/jhipster-application-formatter.js +16 -23
  300. package/dist/jdl/exporters/config.js +1 -0
  301. package/dist/jdl/exporters/jhipster-deployment-exporter.js +5 -5
  302. package/dist/jdl/exporters/jhipster-entity-exporter.js +1 -1
  303. package/dist/jdl/jdl-importer.js +22 -20
  304. package/dist/jdl/jhipster/binary-options.js +12 -8
  305. package/dist/jdl/jhipster/json-entity.js +1 -1
  306. package/dist/jdl/models/abstract-jdl-option.js +2 -2
  307. package/dist/jdl/models/jdl-application-configuration-factory.js +2 -0
  308. package/dist/jdl/models/jdl-binary-option.js +2 -2
  309. package/dist/jdl/models/jdl-deployment.js +11 -0
  310. package/dist/jdl/models/jdl-entity.js +1 -1
  311. package/dist/jdl/models/jdl-enum.js +1 -1
  312. package/dist/jdl/models/jdl-enums.js +0 -18
  313. package/dist/jdl/models/jdl-field.js +2 -2
  314. package/dist/jdl/models/jdl-object-wrapper.js +1 -0
  315. package/dist/jdl/models/jdl-object.js +23 -45
  316. package/dist/jdl/models/jdl-options.js +0 -18
  317. package/dist/jdl/models/jdl-relationships.js +8 -16
  318. package/dist/jdl/models/jdl-unary-option.js +1 -1
  319. package/dist/jdl/models/list-jdl-application-configuration-option.js +5 -2
  320. package/dist/jdl/parsing/jdl-ast-builder-visitor.js +12 -0
  321. package/dist/jdl/parsing/jdl-parser.js +14 -0
  322. package/dist/jdl/parsing/lexer/lexer.js +17 -11
  323. package/dist/jdl/parsing/validator.js +16 -2
  324. package/dist/jdl/readers/json-reader.js +1 -1
  325. package/dist/jdl/utils/array-utils.js +6 -0
  326. package/dist/jdl/utils/set-utils.js +3 -2
  327. package/dist/jdl/validators/jdl-without-application-validator.js +2 -2
  328. package/dist/lib/eslint/base.js +25 -0
  329. package/dist/lib/eslint/recommended.js +22 -0
  330. package/dist/testing/github.js +32 -0
  331. package/dist/testing/helpers.js +13 -0
  332. package/dist/testing/index.js +2 -0
  333. package/dist/testing/sample-config.js +31 -0
  334. package/dist/types/cli/commands.d.mts +2 -0
  335. package/dist/types/cli/environment-builder.d.mts +1 -0
  336. package/dist/types/generators/base/api.d.ts +19 -8
  337. package/dist/types/generators/base/generator.d.ts +10 -4
  338. package/dist/types/generators/base/internal/command.d.ts +2 -0
  339. package/dist/types/generators/base/internal/index.d.ts +1 -0
  340. package/dist/types/generators/base/priorities.d.ts +4 -0
  341. package/dist/types/generators/base/shared-data.d.ts +11 -2
  342. package/dist/types/generators/base/types.d.ts +12 -0
  343. package/dist/types/generators/base-application/priorities.d.ts +2 -0
  344. package/dist/types/generators/base-application/support/entity.d.ts +2 -2
  345. package/dist/types/generators/base-application/support/prepare-entity.d.ts +3 -3
  346. package/dist/types/generators/base-application/support/relationship.d.ts +5 -5
  347. package/dist/types/generators/base-application/types.d.ts +11 -0
  348. package/dist/types/generators/base-core/generator.d.ts +18 -2
  349. package/dist/types/generators/generator-constants.d.ts +1 -1
  350. package/dist/types/generators/info/support/extract-info.d.ts +14 -0
  351. package/dist/types/generators/info/support/index.d.ts +1 -0
  352. package/dist/types/generators/java/support/add-java-annotation.d.ts +10 -20
  353. package/dist/types/generators/java/support/doc.d.ts +1 -1
  354. package/dist/types/generators/java/support/index.d.ts +1 -1
  355. package/dist/types/generators/java/types.d.ts +12 -0
  356. package/dist/types/generators/maven/internal/xml-store.d.ts +3 -2
  357. package/dist/types/generators/maven/support/pom-store.d.ts +5 -2
  358. package/dist/types/generators/maven/types.d.ts +1 -0
  359. package/dist/types/generators/server/support/relationship.d.ts +2 -2
  360. package/dist/types/generators/server/types.d.ts +7 -1
  361. package/dist/types/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.d.ts +2 -0
  362. package/dist/types/generators/spring-cloud/generators/gateway/types.d.ts +4 -0
  363. package/dist/types/jdl/converters/jdl-to-json/jdl-to-json-field-converter.d.ts +2 -2
  364. package/dist/types/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.d.ts +2 -1
  365. package/dist/types/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.d.ts +3 -1
  366. package/dist/types/jdl/converters/json-to-jdl-application-converter.d.ts +9 -2
  367. package/dist/types/jdl/converters/json-to-jdl-converter.d.ts +3 -3
  368. package/dist/types/jdl/converters/json-to-jdl-entity-converter.d.ts +2 -4
  369. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/application-converter.d.ts +3 -1
  370. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/deployment-converter.d.ts +2 -1
  371. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/entity-converter.d.ts +3 -1
  372. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/enum-converter.d.ts +2 -1
  373. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/field-converter.d.ts +2 -1
  374. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/option-converter.d.ts +3 -3
  375. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.d.ts +2 -1
  376. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/relationship-converter.d.ts +2 -1
  377. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/types.d.ts +110 -0
  378. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.d.ts +2 -1
  379. package/dist/types/jdl/converters/types.d.ts +102 -14
  380. package/dist/types/jdl/exporters/applications/jhipster-application-formatter.d.ts +4 -4
  381. package/dist/types/jdl/exporters/config.d.ts +2 -1
  382. package/dist/types/jdl/exporters/export-utils.d.ts +2 -1
  383. package/dist/types/jdl/exporters/jdl-exporter.d.ts +2 -1
  384. package/dist/types/jdl/exporters/jhipster-deployment-exporter.d.ts +3 -1
  385. package/dist/types/jdl/exporters/jhipster-entity-exporter.d.ts +3 -1
  386. package/dist/types/jdl/exporters/types.d.ts +61 -0
  387. package/dist/types/jdl/jhipster/binary-options.d.ts +8 -26
  388. package/dist/types/jdl/jhipster/field-types.d.ts +2 -2
  389. package/dist/types/jdl/jhipster/json-entity.d.ts +2 -2
  390. package/dist/types/jdl/models/abstract-jdl-option.d.ts +14 -9
  391. package/dist/types/jdl/models/boolean-jdl-application-configuration-option.d.ts +1 -1
  392. package/dist/types/jdl/models/integer-jdl-application-configuration-option.d.ts +1 -1
  393. package/dist/types/jdl/models/jdl-application-configuration-factory.d.ts +1 -1
  394. package/dist/types/jdl/models/jdl-application-configuration-option.d.ts +4 -4
  395. package/dist/types/jdl/models/jdl-application-configuration.d.ts +4 -4
  396. package/dist/types/jdl/models/jdl-application-definition.d.ts +4 -4
  397. package/dist/types/jdl/models/jdl-application-entities.d.ts +4 -4
  398. package/dist/types/jdl/models/jdl-application.d.ts +16 -13
  399. package/dist/types/jdl/models/jdl-binary-option.d.ts +5 -3
  400. package/dist/types/jdl/models/jdl-deployment.d.ts +13 -1
  401. package/dist/types/jdl/models/jdl-entity.d.ts +5 -5
  402. package/dist/types/jdl/models/jdl-enum-value.d.ts +4 -4
  403. package/dist/types/jdl/models/jdl-enum.d.ts +9 -5
  404. package/dist/types/jdl/models/jdl-enums.d.ts +6 -5
  405. package/dist/types/jdl/models/jdl-field.d.ts +10 -8
  406. package/dist/types/jdl/models/jdl-object-wrapper.d.ts +25 -0
  407. package/dist/types/jdl/models/jdl-object.d.ts +23 -19
  408. package/dist/types/jdl/models/jdl-options.d.ts +7 -24
  409. package/dist/types/jdl/models/jdl-relationship.d.ts +16 -10
  410. package/dist/types/jdl/models/jdl-relationships.d.ts +5 -5
  411. package/dist/types/jdl/models/jdl-validation.d.ts +3 -3
  412. package/dist/types/jdl/models/list-jdl-application-configuration-option.d.ts +4 -3
  413. package/dist/types/jdl/models/string-jdl-application-configuration-option.d.ts +2 -2
  414. package/dist/types/jdl/parsing/jdl-ast-builder-visitor.d.ts +1 -0
  415. package/dist/types/jdl/parsing/jdl-parser.d.ts +1 -0
  416. package/dist/types/jdl/parsing/jdl-parsing-types.d.ts +23 -0
  417. package/dist/types/jdl/parsing/lexer/lexer.d.ts +6 -2
  418. package/dist/types/jdl/parsing/validator.d.ts +1 -1
  419. package/dist/types/jdl/utils/array-utils.d.ts +1 -0
  420. package/dist/types/jdl/utils/set-utils.d.ts +1 -19
  421. package/dist/types/jdl/validators/deployment-validator.d.ts +2 -1
  422. package/dist/types/lib/eslint/base.d.ts +20 -0
  423. package/dist/types/lib/eslint/recommended.d.ts +20 -0
  424. package/dist/types/testing/github.d.ts +11 -0
  425. package/dist/types/testing/helpers.d.ts +21 -3
  426. package/dist/types/testing/index.d.ts +2 -0
  427. package/dist/types/testing/sample-config.d.ts +4 -0
  428. package/package.json +35 -30
  429. package/dist/generators/generate-blueprint/templates/.eslintrc.json.ejs +0 -35
  430. /package/dist/jdl/converters/{types.js → parsed-jdl-to-jdl-object/types.js} +0 -0
@@ -31,6 +31,10 @@ if (isUsingMapsId) {
31
31
  mapsIdEntityInstance = mapsIdEntity.charAt(0).toLowerCase() + mapsIdEntity.slice(1);
32
32
  mapsIdRepoInstance = `${mapsIdEntityInstance}Repository`;
33
33
  }
34
+ const hasUserRepository =
35
+ (requiresDeleteAllUsers && hasRelationshipWithBuiltInUser) ||
36
+ filterTestableRelationships.some(rel => rel.otherEntity.builtInUser) ||
37
+ (isUsingMapsId && (!dtoMapstruct && serviceNo) && mapsIdEntity === 'User');
34
38
 
35
39
  let callBlock = '';
36
40
  let callListBlock = '';
@@ -85,8 +89,8 @@ if(jpaMetamodelFiltering && reactive) {
85
89
  import <%= entityAbsolutePackage %>.repository.<%= relationship.otherEntityNameCapitalized %>Repository;
86
90
  <%_ });
87
91
  } _%>
88
- <%_ if (saveUserSnapshot) { _%>
89
- import <%= entityAbsolutePackage %>.repository.UserRepository;
92
+ <%_ if (hasUserRepository) { _%>
93
+ import <%= user.entityAbsolutePackage %>.repository.UserRepository;
90
94
  <%_ } _%>
91
95
  import <%= entityAbsolutePackage %>.repository.<%= entityClass %>Repository;
92
96
  <%_ if (databaseTypeSql && reactive) { _%>
@@ -114,9 +118,7 @@ import org.assertj.core.util.IterableUtil;
114
118
  import org.springframework.data.util.Streamable;
115
119
  import java.util.concurrent.TimeUnit;
116
120
  <%_ } _%>
117
- <%_ if ((databaseTypeSql && reactive) || searchEngineElasticsearch) { _%>
118
121
  import org.junit.jupiter.api.AfterEach;
119
- <%_ } _%>
120
122
  import org.junit.jupiter.api.BeforeEach;
121
123
  <%_ if (skipJunitTests) { _%>
122
124
  import org.junit.jupiter.api.Disabled;
@@ -459,11 +461,11 @@ if (field.fieldTypeString || field.blobContentTypeText) {
459
461
 
460
462
  @Autowired
461
463
  private <%= entityClass %>Repository <%= entityInstance %>Repository;
462
- <%_ if (isUsingMapsId && (!dtoMapstruct && serviceNo)) { _%>
464
+ <%_ if (isUsingMapsId && (!dtoMapstruct && serviceNo) && mapsIdEntity !== 'User') { _%>
463
465
  @Autowired
464
466
  private <%= mapsIdEntity %>Repository <%= mapsIdRepoInstance %>;
465
467
  <%_ } _%>
466
- <%_ if (saveUserSnapshot) { _%>
468
+ <%_ if (hasUserRepository) { _%>
467
469
 
468
470
  @Autowired
469
471
  private UserRepository userRepository;
@@ -503,8 +505,10 @@ if (field.fieldTypeString || field.blobContentTypeText) {
503
505
 
504
506
  private <%= persistClass %> <%= persistInstance %>;
505
507
 
508
+ private <%= persistClass %> inserted<%= persistClass %>;
509
+
506
510
  <%_ if(jpaMetamodelFiltering && reactive) {
507
- filterTestableRelationships.forEach((relationship) => { _%>
511
+ filterTestableRelationships.filter(rel => !rel.otherEntity.builtInUser).forEach((relationship) => { _%>
508
512
  @Autowired
509
513
  private <%= relationship.otherEntity.persistClass %>Repository <%= relationship.otherEntity.persistInstance %>Repository;
510
514
  <%_ });
@@ -620,19 +624,6 @@ _%>
620
624
  }); _%>
621
625
  }
622
626
 
623
- @AfterEach
624
- public void cleanup() {
625
- deleteEntities(em);
626
- }
627
-
628
- <%_ } _%>
629
- <%_ if (searchEngineElasticsearch) { _%>
630
- @AfterEach
631
- public void cleanupElasticSearchRepository() {
632
- <%= entityInstance %>SearchRepository.deleteAll()<%= callBlock %>;
633
- assertThat(<%= entityInstance %>SearchRepository.count()<%= callBlock %>).isEqualTo(0);
634
- }
635
-
636
627
  <%_ } _%>
637
628
  <%_ if (reactive && authenticationUsesCsrf) { _%>
638
629
  @BeforeEach
@@ -643,12 +634,27 @@ _%>
643
634
  <%_ } _%>
644
635
  @BeforeEach
645
636
  public void initTest() {
646
- <%_ if (databaseTypeMongodb || databaseTypeCouchbase || databaseTypeCassandra || databaseTypeNeo4j) { _%>
647
- <%= entityInstance %>Repository.deleteAll()<%= callBlock %>;
648
- <%_ } else if (databaseTypeSql && reactive) { _%>
637
+ <%= persistInstance %> = createEntity(<% if (databaseTypeSql) { %>em<% } %>);
638
+ }
639
+
640
+ @AfterEach
641
+ public void cleanup() {
642
+ if (inserted<%= persistClass %> != null) {
643
+ <%= entityInstance %>Repository.delete(inserted<%= persistClass %>)<%= reactorBlock %>;
644
+ <%_ if (searchEngineElasticsearch) { _%>
645
+ <%= entityInstance %>SearchRepository.delete(inserted<%= persistClass %>)<%= reactorBlock %>;
646
+ <%_ } _%>
647
+ inserted<%= persistClass %> = null;
648
+ }
649
+ <%_ if (databaseTypeSql && reactive) { _%>
649
650
  deleteEntities(em);
650
651
  <%_ } _%>
651
- <%= persistInstance %> = createEntity(<% if (databaseTypeSql) { %>em<% } %>);
652
+ <%_ if (requiresDeleteAllUsers && hasUserRepository) { _%>
653
+ <%_ if (databaseTypeSql && reactive) { _%>
654
+ userRepository.deleteAllUserAuthorities()<%- reactorBlock %>;
655
+ <%_ } _%>
656
+ userRepository.deleteAll()<%- reactorBlock %>;
657
+ <%_ } _%>
652
658
  }
653
659
  <%_ if (!readOnly) { _%>
654
660
 
@@ -718,13 +724,15 @@ _%>
718
724
 
719
725
  assert<%- persistClass %>MapsIdRelationshipPersistedValue(<%= persistInstance %>, returned<%- persistClass %>);
720
726
  <%_ } _%>
727
+
728
+ inserted<%= persistClass %> = returned<%- persistClass %>;
721
729
  }
722
730
 
723
731
  @Test<%= transactionalAnnotation %>
724
732
  void create<%= entityClass %>WithExistingId() throws Exception {
725
733
  // Create the <%= entityClass %> with an existing ID
726
734
  <%_ if ((primaryKey.typeUUID && databaseTypeSql) || !primaryKey.autoGenerate) { _%>
727
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
735
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
728
736
  <%_ } else { _%>
729
737
  <%= persistInstance %>.set<%= primaryKey.nameCapitalized %>(<% if (primaryKey.typeUUID) { %>UUID.randomUUID()<% } else if (primaryKey.typeLong) { %>1L<% } else if (primaryKey.typeInteger) { %>1<% } else { %>"existing_id"<% } %>);
730
738
  <%_ } _%>
@@ -772,7 +780,7 @@ _%>
772
780
  @Test<%= transactionalAnnotation %>
773
781
  void update<%= entityClass %>MapsIdAssociationWithNewId() throws Exception {
774
782
  // Initialize the database
775
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
783
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
776
784
  <%_ const alreadyGeneratedEntities = []; _%>
777
785
  long databaseSizeBeforeCreate = getRepositoryCount();
778
786
  <%_ if (searchEngineElasticsearch) { _%>
@@ -828,14 +836,14 @@ _%>
828
836
  <%_ if (databaseTypeCouchbase) { _%>
829
837
  SecurityContextHolder.setContext(TestSecurityContextHolder.getContext());
830
838
  <%_ } _%>
831
- List<<%= persistClass %>> <%= entityInstance %>List = <%= entityInstance %>Repository.findAll()<%= callListBlock %>;
832
839
  assertSameRepositoryCount(databaseSizeBeforeCreate);
833
- <%= persistClass %> test<%= entityClass %> = <%= entityInstance %>List.get(<%= entityInstance %>List.size() - 1);
834
840
 
835
- // Validate the id for MapsId, the ids must be same
836
- // Uncomment the following line for assertion. However, please note that there is a known issue and uncommenting will fail the test.
837
- // Please look at https://github.com/jhipster/generator-jhipster/issues/9100. You can modify this test as necessary.
838
- // assertThat(test<%= entityClass %>.get<%= primaryKey.nameCapitalized %>()).isEqualTo(test<%= entityClass %>.get<%= mapsIdEntity %>().get<%= primaryKey.nameCapitalized %>());
841
+ /**
842
+ * Validate the id for MapsId, the ids must be same
843
+ * Uncomment the following line for assertion. However, please note that there is a known issue and uncommenting will fail the test.
844
+ * Please look at https://github.com/jhipster/generator-jhipster/issues/9100. You can modify this test as necessary.
845
+ * assertThat(test<%= entityClass %>.get<%= primaryKey.nameCapitalized %>()).isEqualTo(test<%= entityClass %>.get<%= mapsIdEntity %>().get<%= primaryKey.nameCapitalized %>());
846
+ */
839
847
  <%_ if (searchEngineElasticsearch) { _%>
840
848
  int searchDatabaseSizeAfter = IterableUtil.sizeOf(<%= entityInstance %>SearchRepository.findAll()<%= callListBlock %>);
841
849
  assertThat(searchDatabaseSizeAfter).isEqualTo(searchDatabaseSizeBefore);
@@ -886,7 +894,6 @@ _%>
886
894
  int searchDatabaseSizeAfter = IterableUtil.sizeOf(<%= entityInstance %>SearchRepository.findAll()<%= callListBlock %>);
887
895
  assertThat(searchDatabaseSizeAfter).isEqualTo(searchDatabaseSizeBefore);
888
896
  <%_ } _%>
889
-
890
897
  }
891
898
  <%_ } _%>
892
899
  <%_ } _%>
@@ -940,7 +947,7 @@ _%>
940
947
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
941
948
  <%_ } _%>
942
949
  <%_ } _%>
943
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
950
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
944
951
 
945
952
  // Get all the <%= entityInstance %>List
946
953
  <%_ if (reactive) { _%>
@@ -1027,7 +1034,7 @@ _%>
1027
1034
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1028
1035
  <%_ } _%>
1029
1036
  <%_ } _%>
1030
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1037
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1031
1038
 
1032
1039
  // Get the <%= entityInstance %>
1033
1040
  <%_ if (reactive) { _%>
@@ -1066,7 +1073,7 @@ _%>
1066
1073
  @Test<%= transactionalAnnotation %>
1067
1074
  void get<%= entityClassPlural %>ByIdFiltering() <% if (!reactive) { %>throws Exception <% } %>{
1068
1075
  // Initialize the database
1069
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1076
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1070
1077
 
1071
1078
  <%= primaryKey.type %> id = <%= persistInstance %>.get<%= primaryKey.nameCapitalized %>();
1072
1079
 
@@ -1085,7 +1092,7 @@ _%>
1085
1092
  @Test<%= transactionalAnnotation %>
1086
1093
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsEqualToSomething() <% if (!reactive) { %>throws Exception <% } %>{
1087
1094
  // Initialize the database
1088
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1095
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1089
1096
 
1090
1097
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> equals to
1091
1098
  default<%= entityClass %>Filtering(
@@ -1097,7 +1104,7 @@ _%>
1097
1104
  @Test<%= transactionalAnnotation %>
1098
1105
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsInShouldWork() <% if (!reactive) { %>throws Exception <% } %>{
1099
1106
  // Initialize the database
1100
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1107
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1101
1108
 
1102
1109
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> in
1103
1110
  default<%= entityClass %>Filtering(
@@ -1109,7 +1116,7 @@ _%>
1109
1116
  @Test<%= transactionalAnnotation %>
1110
1117
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsNullOrNotNull() <% if (!reactive) { %>throws Exception <% } %>{
1111
1118
  // Initialize the database
1112
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1119
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1113
1120
 
1114
1121
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> is not null
1115
1122
  default<%= entityClass %>Filtering(
@@ -1122,7 +1129,7 @@ _%>
1122
1129
  @Test<%= transactionalAnnotation %>
1123
1130
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>ContainsSomething() <% if (!reactive) { %>throws Exception <% } %>{
1124
1131
  // Initialize the database
1125
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1132
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1126
1133
 
1127
1134
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> contains
1128
1135
  default<%= entityClass %>Filtering(
@@ -1134,7 +1141,7 @@ _%>
1134
1141
  @Test<%= transactionalAnnotation %>
1135
1142
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>NotContainsSomething() <% if (!reactive) { %>throws Exception <% } %>{
1136
1143
  // Initialize the database
1137
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1144
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1138
1145
 
1139
1146
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> does not contain
1140
1147
  default<%= entityClass %>Filtering(
@@ -1164,7 +1171,7 @@ _%>
1164
1171
  @Test<%= transactionalAnnotation %>
1165
1172
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsGreaterThanOrEqualToSomething() <% if (!reactive) { %>throws Exception <% } %>{
1166
1173
  // Initialize the database
1167
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1174
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1168
1175
 
1169
1176
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> is greater than or equal to
1170
1177
  default<%= entityClass %>Filtering(
@@ -1176,7 +1183,7 @@ _%>
1176
1183
  @Test<%= transactionalAnnotation %>
1177
1184
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsLessThanOrEqualToSomething() <% if (!reactive) { %>throws Exception <% } %>{
1178
1185
  // Initialize the database
1179
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1186
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1180
1187
 
1181
1188
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> is less than or equal to
1182
1189
  default<%= entityClass %>Filtering(
@@ -1188,7 +1195,7 @@ _%>
1188
1195
  @Test<%= transactionalAnnotation %>
1189
1196
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsLessThanSomething() <% if (!reactive) { %>throws Exception <% } %>{
1190
1197
  // Initialize the database
1191
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1198
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1192
1199
 
1193
1200
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> is less than
1194
1201
  default<%= entityClass %>Filtering(
@@ -1200,7 +1207,7 @@ _%>
1200
1207
  @Test<%= transactionalAnnotation %>
1201
1208
  void getAll<%= entityClassPlural %>By<%= searchBy.fieldInJavaBeanMethod %>IsGreaterThanSomething() <% if (!reactive) { %>throws Exception <% } %>{
1202
1209
  // Initialize the database
1203
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1210
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1204
1211
 
1205
1212
  // Get all the <%= entityInstance %>List where <%= searchBy.fieldName %> is greater than
1206
1213
  default<%= entityClass %>Filtering(
@@ -1246,7 +1253,7 @@ _%>
1246
1253
  <%_ } else { _%>
1247
1254
  <%= relationship.otherEntity.primaryKey.type %> <%= relationship.relationshipFieldName %>Id = <%= relationship.relationshipFieldName %>.get<%= relationship.otherEntity.primaryKey.nameCapitalized %>();
1248
1255
  <%= persistInstance %>.set<%= relationship.relationshipNameCapitalized %>Id(<%= relationship.relationshipFieldName %>Id);
1249
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1256
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1250
1257
  <%_ } _%>
1251
1258
  <%_ } _%>
1252
1259
  <%_ if(!reactive) { _%>
@@ -1420,7 +1427,7 @@ _%>
1420
1427
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1421
1428
  <%_ } _%>
1422
1429
  <%_ } _%>
1423
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1430
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1424
1431
 
1425
1432
  long databaseSizeBeforeUpdate = getRepositoryCount();
1426
1433
  <%_ if (searchEngineElasticsearch) { _%>
@@ -1620,7 +1627,7 @@ _%>
1620
1627
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1621
1628
  <%_ } _%>
1622
1629
  <%_ } _%>
1623
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1630
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1624
1631
 
1625
1632
  <%_ const fieldsToIncludeInPartialPatchTest = fieldsToTest.map(field => prepareFieldForPatchTest(field, () => faker.datatype.boolean())); _%>
1626
1633
  <%- include('/_global_partials_entity_/it_patch_update.partial.java.ejs', {fields: fieldsToIncludeInPartialPatchTest, saveMethod, callBlock, callListBlock}); -%>
@@ -1640,7 +1647,7 @@ _%>
1640
1647
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1641
1648
  <%_ } _%>
1642
1649
  <%_ } _%>
1643
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1650
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1644
1651
 
1645
1652
  <% const fieldsToIncludeInFullPatchTest = fieldsToTest.map(field => prepareFieldForPatchTest(field, () => true)); %>
1646
1653
  <%- include('/_global_partials_entity_/it_patch_update.partial.java.ejs', {fields: fieldsToIncludeInFullPatchTest, saveMethod, callBlock, callListBlock}); -%>
@@ -1777,7 +1784,7 @@ _%>
1777
1784
  <%= persistInstance %>.set<%= primaryKey.nameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1778
1785
  <%_ } _%>
1779
1786
  <%_ } _%>
1780
- <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1787
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1781
1788
  <%_ if (searchEngineElasticsearch) { _%>
1782
1789
  <%= entityInstance %>Repository.save(<%= persistInstance %>)<%= callBlock %>;
1783
1790
  <%= entityInstance %>SearchRepository.save(<%= persistInstance %>)<%= callBlock %>;
@@ -1826,7 +1833,7 @@ _%>
1826
1833
  <%= persistInstance %>.set<%= field.fieldNameCapitalized %>(<%- field.fieldJavaValueGenerator %>);
1827
1834
  <%_ } _%>
1828
1835
  <%_ } _%>
1829
- <%= persistInstance %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1836
+ inserted<%= persistClass %> = <%= entityInstance %>Repository.<%= saveMethod %>(<%= persistInstance %>)<%= callBlock %>;
1830
1837
  <%_ if (searchEngineElasticsearch) { _%>
1831
1838
  <%= entityInstance %>SearchRepository.save(<%= persistInstance %>)<%= callBlock %>;
1832
1839
  <%_ } else if (searchEngineCouchbase) { _%>
@@ -124,11 +124,11 @@ export const getCacheProviderMavenDefinition = (cacheProvider, javaDependencies)
124
124
  },
125
125
  {
126
126
  groupId: 'org.infinispan',
127
- artifactId: 'infinispan-commons-jakarta',
127
+ artifactId: 'infinispan-commons',
128
128
  },
129
129
  {
130
130
  groupId: 'org.infinispan',
131
- artifactId: 'infinispan-core-jakarta',
131
+ artifactId: 'infinispan-core',
132
132
  },
133
133
  {
134
134
  groupId: 'org.infinispan',
@@ -12,4 +12,4 @@ xmemcached-provider = { module = 'com.google.code.simple-spring-memcached:xmemca
12
12
 
13
13
  xmemcached = { module = 'com.googlecode.xmemcached:xmemcached', version = '2.4.8' }
14
14
 
15
- redisson = { module = 'org.redisson:redisson', version = '3.29.0' }
15
+ redisson = { module = 'org.redisson:redisson', version = '3.32.0' }
@@ -250,7 +250,7 @@ public class CacheConfiguration {
250
250
  <%_ } _%>
251
251
  <%_ if (cacheProviderHazelcast) { _%>
252
252
 
253
- private final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
253
+ private static final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
254
254
 
255
255
  private final Environment env;
256
256
  <%_ if (serviceDiscoveryAny) { _%>
@@ -389,7 +389,7 @@ public class CacheConfiguration {
389
389
  <%_ } _%>
390
390
  <%_ if (cacheProviderInfinispan) { _%>
391
391
 
392
- private final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
392
+ private static final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
393
393
 
394
394
  <%_ if (serviceDiscoveryAny) { _%>
395
395
 
@@ -648,7 +648,7 @@ public class CacheConfiguration {
648
648
  <%_ } _%>
649
649
  <%_ if (cacheProviderMemcached) { _%>
650
650
 
651
- private final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
651
+ private static final Logger log = LoggerFactory.getLogger(CacheConfiguration.class);
652
652
 
653
653
  @Bean
654
654
  public CacheManager memcachedCacheManager(JHipsterProperties jHipsterProperties, List<CacheFactory> caches)
@@ -1,5 +1,14 @@
1
1
  const command = {
2
- configs: {},
2
+ configs: {
3
+ routes: {
4
+ description: 'Manually configured gateway routes',
5
+ cli: {
6
+ type: String,
7
+ hide: true,
8
+ },
9
+ scope: 'storage',
10
+ },
11
+ },
3
12
  import: [],
4
13
  };
5
14
  export default command;
@@ -78,6 +78,19 @@ export default class GatewayGenerator extends BaseApplicationGenerator {
78
78
  get [BaseApplicationGenerator.LOADING]() {
79
79
  return this.delegateTasksToBlueprint(() => this.loading);
80
80
  }
81
+ get preparing() {
82
+ return this.asPreparingTaskGroup({
83
+ prepareGateway({ application }) {
84
+ application.gatewayRoutes = (application.routes ?? []).map(routeDef => {
85
+ const [route, host = route, serverPort = '8080'] = routeDef.split(':');
86
+ return { route, serverPort, host };
87
+ });
88
+ },
89
+ });
90
+ }
91
+ get [BaseApplicationGenerator.PREPARING]() {
92
+ return this.delegateTasksToBlueprint(() => this.preparing);
93
+ }
81
94
  get writing() {
82
95
  return this.asWritingTaskGroup({
83
96
  async writing({ application }) {
@@ -0,0 +1,6 @@
1
+ export const jdlRoutesOptions = {
2
+ name: 'routes',
3
+ tokenType: 'quotedList',
4
+ type: 'quotedList',
5
+ tokenValuePattern: /^"[A-Za-z][A-Za-z0-9_]*(?::[A-Za-z][A-Za-z0-9_]+(?::[0-9]+)?)?"$/,
6
+ };
@@ -34,7 +34,7 @@ import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
34
34
  @Component
35
35
  public class KafkaConsumer implements Consumer<String> {
36
36
 
37
- private final Logger log = LoggerFactory.getLogger(KafkaConsumer.class);
37
+ private static final Logger log = LoggerFactory.getLogger(KafkaConsumer.class);
38
38
 
39
39
  private Map<String, SseEmitter> emitters = new HashMap<>();
40
40
 
@@ -29,7 +29,7 @@ import reactor.core.publisher.Sinks;
29
29
  @Component
30
30
  public class KafkaConsumer implements Consumer<String> {
31
31
 
32
- private final Logger log = LoggerFactory.getLogger(KafkaConsumer.class);
32
+ private static final Logger log = LoggerFactory.getLogger(KafkaConsumer.class);
33
33
 
34
34
  private Sinks.Many<String> sink = Sinks.many().unicast().onBackpressureBuffer();
35
35
 
@@ -33,7 +33,7 @@ public class <%= upperFirstCamelCaseBaseName %>KafkaResource {
33
33
 
34
34
  private static final String PRODUCER_BINDING_NAME = "binding-out-0";
35
35
 
36
- private final Logger log = LoggerFactory.getLogger(<%= upperFirstCamelCaseBaseName %>KafkaResource.class);
36
+ private static final Logger log = LoggerFactory.getLogger(<%= upperFirstCamelCaseBaseName %>KafkaResource.class);
37
37
  private final KafkaConsumer kafkaConsumer;
38
38
  private final StreamBridge streamBridge;
39
39
 
@@ -34,7 +34,7 @@ public class <%= upperFirstCamelCaseBaseName %>KafkaResource {
34
34
 
35
35
  private static final String PRODUCER_BINDING_NAME = "binding-out-0";
36
36
 
37
- private final Logger log = LoggerFactory.getLogger(<%= upperFirstCamelCaseBaseName %>KafkaResource.class);
37
+ private static final Logger log = LoggerFactory.getLogger(<%= upperFirstCamelCaseBaseName %>KafkaResource.class);
38
38
  private final KafkaConsumer kafkaConsumer;
39
39
  private final StreamBridge streamBridge;
40
40
 
@@ -78,14 +78,14 @@ export default class CassandraGenerator extends BaseApplicationGenerator {
78
78
  const { reactive, javaDependencies } = application;
79
79
  const cassandraStarter = reactive ? 'spring-boot-starter-data-cassandra-reactive' : 'spring-boot-starter-data-cassandra';
80
80
  source.addJavaDependencies?.([
81
- { groupId: 'com.datastax.oss', artifactId: 'java-driver-mapper-runtime' },
81
+ { groupId: 'org.apache.cassandra', artifactId: 'java-driver-mapper-runtime' },
82
82
  { groupId: 'commons-codec', artifactId: 'commons-codec' },
83
83
  { groupId: 'org.springframework.boot', artifactId: cassandraStarter },
84
84
  { groupId: 'org.lz4', artifactId: 'lz4-java', version: javaDependencies['lz4-java'] },
85
85
  { scope: 'test', groupId: 'org.testcontainers', artifactId: 'junit-jupiter' },
86
86
  { scope: 'test', groupId: 'org.testcontainers', artifactId: 'testcontainers' },
87
87
  { scope: 'test', groupId: 'org.testcontainers', artifactId: 'cassandra' },
88
- { scope: 'annotationProcessor', groupId: 'com.datastax.oss', artifactId: 'java-driver-mapper-processor' },
88
+ { scope: 'annotationProcessor', groupId: 'org.apache.cassandra', artifactId: 'java-driver-mapper-processor' },
89
89
  ]);
90
90
  },
91
91
  });
@@ -82,7 +82,7 @@ public class DatabaseConfiguration extends AbstractCouchbaseConfiguration {
82
82
  private static final String CHANGELOG_COLLECTION = "changelog";
83
83
  private static final String TYPE_KEY = "type";
84
84
 
85
- private final Logger log = LoggerFactory.getLogger(DatabaseConfiguration.class);
85
+ private static final Logger log = LoggerFactory.getLogger(DatabaseConfiguration.class);
86
86
 
87
87
  private final JHipsterProperties jHipsterProperties;
88
88
  private final CouchbaseProperties couchbaseProperties;
@@ -24,10 +24,18 @@ import org.springframework.context.annotation.Configuration;
24
24
  import org.springframework.context.annotation.ComponentScan.Filter;
25
25
  import org.springframework.context.annotation.FilterType;
26
26
  import org.springframework.data.elasticsearch.repository.config.Enable<% if (reactive) { %>Reactive<% } %>ElasticsearchRepositories;
27
- import org.springframework.data.neo4j.repository.<% if (reactive) { %>Reactive<% } %>Neo4jRepository;
28
27
  <%_ } _%>
29
28
 
30
29
  import org.springframework.data.neo4j.repository.config.Enable<% if (reactive) { %>Reactive<% } %>Neo4jRepositories;
30
+ <%_ if (reactive) { _%>
31
+
32
+ import org.neo4j.driver.Driver;
33
+ import org.springframework.context.annotation.Bean;
34
+ import org.springframework.data.neo4j.core.<% if (reactive) { %>Reactive<% } %>DatabaseSelectionProvider;
35
+ import org.springframework.data.neo4j.core.transaction.<% if (reactive) { %>Reactive<% } %>Neo4jTransactionManager;
36
+ import org.springframework.data.neo4j.repository.config.<% if (reactive) { %>Reactive<% } %>Neo4jRepositoryConfigurationExtension;
37
+ import org.springframework.transaction.<% if (reactive) { %>Reactive<% } %>TransactionManager;
38
+ <%_ } _%>
31
39
 
32
40
  @Configuration
33
41
  <%_ if (searchEngineElasticsearch) { _%>
@@ -38,4 +46,12 @@ import org.springframework.data.neo4j.repository.config.Enable<% if (reactive) {
38
46
  <%_ if (searchEngineElasticsearch) { _%>
39
47
  @Enable<% if (reactive) { %>Reactive<% } %>ElasticsearchRepositories("<%= packageName %>.repository.search")
40
48
  <%_ } _%>
41
- public class DatabaseConfiguration {}
49
+ public class DatabaseConfiguration {
50
+ <%_ if (reactive) { _%>
51
+
52
+ @Bean(<% if (reactive) { %>Reactive<% } %>Neo4jRepositoryConfigurationExtension.DEFAULT_TRANSACTION_MANAGER_BEAN_NAME)
53
+ public <% if (reactive) { %>Reactive<% } %>TransactionManager transactionManager(Driver driver, <% if (reactive) { %>Reactive<% } %>DatabaseSelectionProvider databaseNameProvider) {
54
+ return new <% if (reactive) { %>Reactive<% } %>Neo4jTransactionManager(driver, databaseNameProvider);
55
+ }
56
+ <%_ } _%>
57
+ }
@@ -97,7 +97,7 @@ import java.util.UUID;
97
97
  public class DatabaseConfiguration {
98
98
 
99
99
  <%_ if (devDatabaseTypeH2Any) { _%>
100
- private final Logger log = LoggerFactory.getLogger(DatabaseConfiguration.class);
100
+ private static final Logger log = LoggerFactory.getLogger(DatabaseConfiguration.class);
101
101
 
102
102
  private final Environment env;
103
103
 
@@ -67,7 +67,9 @@ public class SqlTestContainersSpringContextCustomizerFactory implements ContextC
67
67
  Class<? extends SqlTestContainer> containerClass = (Class<? extends SqlTestContainer>) Class.forName(this.getClass().getPackageName() + ".<% if (prodDatabaseTypeMysql) { %>Mysql<% } else if (prodDatabaseTypeMariadb) { %>Mariadb<% } else if (prodDatabaseTypeMssql) { %>MsSql<% } else if (prodDatabaseTypePostgresql) { %>PostgreSql<% } %>TestContainer");
68
68
  prodTestContainer = beanFactory.createBean(containerClass);
69
69
  beanFactory.registerSingleton(containerClass.getName(), prodTestContainer);
70
- // ((DefaultListableBeanFactory)beanFactory).registerDisposableBean(containerClass.getName(), prodTestContainer);
70
+ /**
71
+ * ((DefaultListableBeanFactory)beanFactory).registerDisposableBean(containerClass.getName(), prodTestContainer);
72
+ */
71
73
  } catch (ClassNotFoundException e) {
72
74
  throw new RuntimeException(e);
73
75
  }
@@ -16,7 +16,7 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
- import { clientApplicationTemplatesBlock, filterEntitiesAndPropertiesForClient, filterEntitiesForClient } from '../client/support/index.js';
19
+ import { clientApplicationTemplatesBlock } from '../client/support/index.js';
20
20
  export const entityFiles = {
21
21
  client: [
22
22
  clientApplicationTemplatesBlock({
@@ -48,16 +48,16 @@ export const entityFiles = {
48
48
  },
49
49
  ],
50
50
  };
51
- export async function writeEntityFiles({ application, entities }) {
52
- for (const entity of filterEntitiesAndPropertiesForClient(entities).filter(entity => !entity.skipClient && !entity.builtInUser)) {
51
+ export async function writeEntityFiles({ control, application, entities }) {
52
+ for (const entity of (control.filterEntitiesAndPropertiesForClient ?? (entities => entities))(entities).filter(entity => !entity.skipClient && !entity.builtInUser)) {
53
53
  await this.writeFiles({
54
54
  sections: entityFiles,
55
55
  context: { ...application, ...entity },
56
56
  });
57
57
  }
58
58
  }
59
- export async function postWriteEntityFiles({ application, entities }) {
60
- for (const entity of filterEntitiesForClient(entities).filter(entity => !entity.builtInUser)) {
59
+ export async function postWriteEntityFiles({ control, application, entities }) {
60
+ for (const entity of (control.filterEntitiesForClient ?? (entities => entities))(entities).filter(entity => !entity.builtInUser)) {
61
61
  if (!entity.embedded) {
62
62
  const { enableTranslation } = application;
63
63
  const { entityInstance, entityClass, entityAngularName, entityFolderName, entityFileName, entityUrl, microserviceName, readOnly, entityClassPlural, i18nKeyPrefix, pageTitle = enableTranslation ? `${i18nKeyPrefix}.home.title` : entityClassPlural, } = entity;
@@ -66,8 +66,8 @@ export async function postWriteEntityFiles({ application, entities }) {
66
66
  }
67
67
  }
68
68
  }
69
- export function cleanupEntitiesFiles({ application, entities }) {
70
- for (const entity of filterEntitiesForClient(entities).filter(entity => !entity.builtInUser)) {
69
+ export function cleanupEntitiesFiles({ control, application, entities }) {
70
+ for (const entity of (control.filterEntitiesForClient ?? (entities => entities))(entities).filter(entity => !entity.builtInUser)) {
71
71
  const { entityFolderName, entityFileName } = entity;
72
72
  if (this.isJhipsterVersionLessThan('8.0.0-beta.3')) {
73
73
  this.removeFile(`${application.clientTestDir}/spec/app/entities/${entityFolderName}/${entityFileName}.component.spec.ts`);