private boolean filterByModule()

in initializer-generator/src/main/java/org/apache/dubbo/initializer/generation/extension/codes/sample/ProtoBufCodeContributor.java [147:181]


    private boolean filterByModule(Map.Entry<String, Dependency> entry, Architecture arch) {

        String id = entry.getKey();
        EnhancedDependency dep = getMetaDependency(id);

        if (dep == null) {
            return true;
        }

        Map<String, DependencyArchConfig> cfgs = dep.getArchCfg();

        DependencyArchConfig cfg = cfgs != null ? cfgs.get(arch.getId()) : null;

        if (cfg != null) {
            if (cfg.getSupported() != null && !cfg.getSupported()) {
                // not supported explicitly
                return false;
            }

            Map<String, ModuleConfig> moduleCfgs = cfg.getModules();
            if (moduleCfgs == null || moduleCfgs.size() == 0) {
                return module.isMain();
            }

            ModuleConfig moduleCfg = moduleCfgs.get(module.getName());

            if (moduleCfg == null) {
                return false;
            }

            return true;
        } else {
            return module.isMain();
        }
    }