Skip to content

Commit fd89715

Browse files
committed
Initial commit
1 parent d6b0315 commit fd89715

File tree

1 file changed

+28
-21
lines changed

1 file changed

+28
-21
lines changed

src/com/magento/idea/magento2plugin/actions/generation/generator/ModuleComposerJsonGenerator.java

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -136,10 +136,12 @@ private String getDependenciesString(final List dependenciesList) {
136136
for (int i = 0; i < dependencies.length; i++) {
137137
final String dependency = dependencies[i].toString();
138138
final Pair<String, String> dependencyData = getDependencyData(dependency);
139-
result = result.concat("\"");
140-
result = result.concat(dependencyData.getFirst());
141-
result = result.concat("\"");
142-
result = result.concat(": \"" + dependencyData.getSecond() + "\"");
139+
if (!dependencyData.getFirst().isEmpty()) {
140+
result = result.concat("\"");
141+
result = result.concat(dependencyData.getFirst());
142+
result = result.concat("\"");
143+
result = result.concat(": \"" + dependencyData.getSecond() + "\"");
144+
}
143145

144146
if (dependencies.length != i + 1) {
145147
result = result.concat(",");
@@ -157,24 +159,29 @@ private Pair<String, String> getDependencyData(
157159
String version = "*";
158160
String moduleName = camelCaseToHyphen.convert(dependency).replace("_-", "/");
159161
try {
160-
final VirtualFile virtualFile = moduleIndex.getModuleDirectoryByModuleName(dependency)
161-
.findFile(ComposerJson.FILE_NAME)
162-
.getVirtualFile();//NOPMD
163-
if (virtualFile.exists()) {
164-
final JsonElement jsonElement =
165-
new JsonParser().parse(new FileReader(virtualFile.getPath()));//NOPMD
166-
final JsonElement versionJsonElement = jsonElement.getAsJsonObject().get("version");
167-
final JsonElement nameJsonElement = jsonElement.getAsJsonObject().get("name");
168-
if (versionJsonElement != null) {
169-
version = versionJsonElement.getAsString();
170-
final int minorVersionSeparator = version.lastIndexOf('.');
171-
version = new StringBuilder(version)
172-
.replace(minorVersionSeparator + 1, version.length(),"*")
173-
.toString();
174-
}
175-
if (nameJsonElement != null) {
176-
moduleName = nameJsonElement.getAsString();
162+
final PsiFile virtualFile = moduleIndex.getModuleDirectoryByModuleName(dependency)
163+
.findFile(ComposerJson.FILE_NAME);
164+
165+
if (virtualFile != null) {
166+
final VirtualFile composerJsonFile = virtualFile.getVirtualFile();//NOPMD
167+
if (composerJsonFile.exists()) {
168+
final JsonElement jsonElement =
169+
new JsonParser().parse(new FileReader(composerJsonFile.getPath()));//NOPMD
170+
final JsonElement versionJsonElement = jsonElement.getAsJsonObject().get("version");
171+
final JsonElement nameJsonElement = jsonElement.getAsJsonObject().get("name");
172+
if (versionJsonElement != null) {
173+
version = versionJsonElement.getAsString();
174+
final int minorVersionSeparator = version.lastIndexOf('.');
175+
version = new StringBuilder(version)
176+
.replace(minorVersionSeparator + 1, version.length(),"*")
177+
.toString();
178+
}
179+
if (nameJsonElement != null) {
180+
moduleName = nameJsonElement.getAsString();
181+
}
177182
}
183+
} else {
184+
return Pair.create("", "");
178185
}
179186
} catch (FileNotFoundException e) { //NOPMD
180187
// It's fine

0 commit comments

Comments
 (0)