docs: @Bean
      @ConditionalOnMissingBean
      SoftwareModuleManagement softwareModuleManagement(final EntityManager entityManager,
              final DistributionSetRepository distributionSetRepository,
              final SoftwareModuleRepository softwareModuleRepository,
              final SoftwareModuleMetadataRepository softwareModuleMetadataRepository,
              final SoftwareModuleTypeRepository softwareModuleTypeRepository,
              final NoCountPagingRepository criteriaNoCountDao, final AuditorAware<String> auditorProvider,
              final ArtifactManagement artifactManagement, final QuotaManagement quotaManagement,
              final VirtualPropertyReplacer virtualPropertyReplacer, final JpaProperties properties) {
          return new JpaSoftwareModuleManagement(entityManager, distributionSetRepository, softwareModuleRepository,
                  softwareModuleMetadataRepository, softwareModuleTypeRepository, criteriaNoCountDao, auditorProvider,
                  artifactManagement, quotaManagement, virtualPropertyReplacer, properties.getDatabase());
      }