jabrena / spring-boot-user-beans

A visual way to increase the developer awareness to minimize the number of Beans in memory.
https://jabrena.github.io/spring-boot-user-beans/
Apache License 2.0
52 stars 3 forks source link

Reduce complexity on UserBeansDependencyService #90

Closed jabrena closed 1 year ago

jabrena commented 1 year ago

https://github.com/jabrena/spring-boot-user-beans/blob/feature/reduce-complexity/spring-boot-user-beans-starter/src/main/java/io/github/jabrena/userbeans/UserBeansDependencyService.java

jabrena commented 1 year ago

Include packages:

public record DependencyDocument(String beanName, String beanPackage, List<String> beanDependencies, String dependency) {}

in that way, it is possible to consume here:

    record FlatDependencyPackage(String dependencyName, String packageName) {}

    private List<FlatDependencyPackage> getFlatDependenciPackages() {
        //TODO replace data with getDependencyDocuments()
        return userDependenciesService
            .getDependenciesAndPackages()
            .stream()
            .flatMap(dd -> {
                var dependencyName = dd.dependencyName();
                return dd.packages().stream().map(str -> new FlatDependencyPackage(dependencyName, str));
            })
            .toList();
    }
jabrena commented 1 year ago

But… maybe it is not the best approach. Let’s review tomorrow

jabrena commented 1 year ago

https://github.com/jabrena/spring-boot-user-beans/pull/104