diff --git a/src/com/magento/idea/magento2plugin/actions/generation/generator/ModuleComposerJsonGenerator.java b/src/com/magento/idea/magento2plugin/actions/generation/generator/ModuleComposerJsonGenerator.java index 85e867ec6..631220870 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/generator/ModuleComposerJsonGenerator.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/generator/ModuleComposerJsonGenerator.java @@ -18,7 +18,6 @@ import com.magento.idea.magento2plugin.actions.generation.generator.util.FileFromTemplateGenerator; import com.magento.idea.magento2plugin.indexes.ModuleIndex; import com.magento.idea.magento2plugin.magento.files.ComposerJson; -import com.magento.idea.magento2plugin.util.CamelCaseToHyphen; import java.util.List; import java.util.Properties; import org.jetbrains.annotations.NotNull; @@ -28,10 +27,10 @@ public class ModuleComposerJsonGenerator extends FileGenerator { + private static final String ANY_VERSION = "*"; private final ModuleComposerJsonData moduleComposerJsonData; private final FileFromTemplateGenerator fileFromTemplateGenerator; private final DirectoryGenerator directoryGenerator; - private final CamelCaseToHyphen camelCaseToHyphen; private final ModuleIndex moduleIndex; /** @@ -48,7 +47,6 @@ public ModuleComposerJsonGenerator( this.moduleComposerJsonData = moduleComposerJsonData; this.fileFromTemplateGenerator = new FileFromTemplateGenerator(project); this.directoryGenerator = DirectoryGenerator.getInstance(); - this.camelCaseToHyphen = CamelCaseToHyphen.getInstance(); this.moduleIndex = new ModuleIndex(project); } @@ -158,10 +156,9 @@ private String getDependenciesString(final List dependenciesList) { private Pair getDependencyData( final String dependency ) { - String version = "*"; - String moduleName = camelCaseToHyphen.convert(dependency).replace( - "_-", "/" - ); + String version = ""; + String moduleName = ""; + try { final PsiDirectory moduleDir = moduleIndex.getModuleDirectoryByModuleName(dependency); @@ -184,20 +181,20 @@ private Pair getDependencyData( composerJsonFile.getText() ); final JSONObject jsonObject = (JSONObject) obj; - final String versionJsonElement = jsonObject.get("version").toString(); - final String nameJsonElement = jsonObject.get("name").toString(); - if (versionJsonElement != null) { - version = versionJsonElement; + if (jsonObject.get("name") == null) { + return Pair.create("", ""); + } + moduleName = jsonObject.get("name").toString().trim(); + version = jsonObject.get("version") == null + ? ANY_VERSION : jsonObject.get("version").toString(); + + if (!ANY_VERSION.equals(version)) { final int minorVersionSeparator = version.lastIndexOf('.'); version = new StringBuilder(version) - .replace(minorVersionSeparator + 1, version.length(),"*") + .replace(minorVersionSeparator + 1, version.length(), ANY_VERSION) .toString(); } - - if (nameJsonElement != null) { - moduleName = nameJsonElement; - } } } else { return Pair.create("", "");