in src/com/intellij/idea/plugin/hybris/project/descriptors/DefaultHybrisProjectDescriptor.java [201:254]
private ConfigModuleDescriptor findConfigDir() {
final List<ConfigModuleDescriptor> foundConfigModules = new ArrayList<>();
PlatformModuleDescriptor platformHybrisModuleDescriptor = null;
for (ModuleDescriptor moduleDescriptor : foundModules) {
if (moduleDescriptor instanceof final ConfigModuleDescriptor descriptor) {
foundConfigModules.add(descriptor);
}
if (moduleDescriptor instanceof final PlatformModuleDescriptor descriptor) {
platformHybrisModuleDescriptor = descriptor;
}
}
if (platformHybrisModuleDescriptor == null) {
if (foundConfigModules.size() == 1) {
return foundConfigModules.get(0);
}
return null;
}
final File configDir;
if (externalConfigDirectory != null) {
configDir = externalConfigDirectory;
if (!configDir.isDirectory()) {
return null;
}
} else {
configDir = getExpectedConfigDir(platformHybrisModuleDescriptor);
if (configDir == null || !configDir.isDirectory()) {
if (foundConfigModules.size() == 1) {
return foundConfigModules.get(0);
}
return null;
}
}
for (final ConfigModuleDescriptor configHybrisModuleDescriptor : foundConfigModules) {
if (FileUtil.filesEqual(configHybrisModuleDescriptor.getModuleRootDirectory(), configDir)) {
return configHybrisModuleDescriptor;
}
}
final HybrisProjectService hybrisProjectService = ApplicationManager.getApplication().getService(HybrisProjectService.class);
if (hybrisProjectService.isConfigModule(configDir)) {
try {
final var configHybrisModuleDescriptor = ModuleDescriptorFactory.INSTANCE.createConfigDescriptor(
configDir, platformHybrisModuleDescriptor.getRootProjectDescriptor(), configDir.getName()
);
LOG.info("Creating Overridden Config module in local.properties for " + configDir.getAbsolutePath());
foundModules.add(configHybrisModuleDescriptor);
Collections.sort(foundModules);
return configHybrisModuleDescriptor;
} catch (HybrisConfigurationException e) {
// no-op
}
}
return null;
}