Skip to content

Commit 2c59bfb

Browse files
authored
Merge pull request #609 from bohdan-harniuk/fix-plugin-generation-for-complex-non-primitive-types
Fixed plugin generation for complex non primitive types
2 parents 87216d7 + 58abe4f commit 2c59bfb

8 files changed

+466
-269
lines changed

src/com/magento/idea/magento2plugin/actions/generation/ImportReferences/PhpClassReferenceExtractor.java

-73
This file was deleted.

src/com/magento/idea/magento2plugin/actions/generation/ImportReferences/PhpClassReferenceResolver.java

-164
This file was deleted.

src/com/magento/idea/magento2plugin/actions/generation/PluginGenerateMethodHandlerBase.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@
2929
import com.jetbrains.php.lang.psi.elements.Method;
3030
import com.jetbrains.php.lang.psi.elements.PhpClass;
3131
import com.jetbrains.php.lang.psi.elements.PhpPsiElement;
32-
import com.magento.idea.magento2plugin.actions.generation.ImportReferences.PhpClassReferenceResolver;
3332
import com.magento.idea.magento2plugin.actions.generation.data.code.PluginMethodData;
3433
import com.magento.idea.magento2plugin.actions.generation.generator.code.PluginMethodsGenerator;
34+
import com.magento.idea.magento2plugin.actions.generation.references.PhpClassReferenceResolver;
3535
import com.magento.idea.magento2plugin.actions.generation.util.CodeStyleSettings;
3636
import com.magento.idea.magento2plugin.actions.generation.util.CollectInsertedMethods;
3737
import com.magento.idea.magento2plugin.actions.generation.util.FillTextBufferWithPluginMethods;
@@ -72,7 +72,7 @@ public abstract class PluginGenerateMethodHandlerBase implements LanguageCodeIns
7272
*/
7373
public PluginGenerateMethodHandlerBase(final Plugin.PluginType type) {
7474
this.type = type.toString();
75-
this.fillTextBuffer = FillTextBufferWithPluginMethods.getInstance();
75+
this.fillTextBuffer = new FillTextBufferWithPluginMethods();
7676
this.collectInsertedMethods = CollectInsertedMethods.getInstance();
7777
this.validatorBundle = new ValidatorBundle();
7878
this.commonBundle = new CommonBundle();

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

+7-5
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@
2121
import com.jetbrains.php.lang.psi.elements.Method;
2222
import com.jetbrains.php.lang.psi.elements.PhpClass;
2323
import com.jetbrains.php.lang.psi.elements.PhpPsiElement;
24-
import com.magento.idea.magento2plugin.actions.generation.ImportReferences.PhpClassReferenceResolver;
2524
import com.magento.idea.magento2plugin.actions.generation.data.PluginFileData;
2625
import com.magento.idea.magento2plugin.actions.generation.data.code.PluginMethodData;
2726
import com.magento.idea.magento2plugin.actions.generation.generator.code.PluginMethodsGenerator;
2827
import com.magento.idea.magento2plugin.actions.generation.generator.util.DirectoryGenerator;
2928
import com.magento.idea.magento2plugin.actions.generation.generator.util.FileFromTemplateGenerator;
29+
import com.magento.idea.magento2plugin.actions.generation.references.PhpClassReferenceResolver;
3030
import com.magento.idea.magento2plugin.actions.generation.util.CodeStyleSettings;
3131
import com.magento.idea.magento2plugin.actions.generation.util.CollectInsertedMethods;
3232
import com.magento.idea.magento2plugin.actions.generation.util.FillTextBufferWithPluginMethods;
@@ -46,10 +46,9 @@
4646
import javax.swing.JOptionPane;
4747
import org.jetbrains.annotations.NotNull;
4848

49-
@SuppressWarnings({
50-
"PMD.ExcessiveImports"
51-
})
49+
@SuppressWarnings({"PMD.ExcessiveImports"})
5250
public class PluginClassGenerator extends FileGenerator {
51+
5352
private final PluginFileData pluginFileData;
5453
private final Project project;
5554
private final ValidatorBundle validatorBundle;
@@ -74,7 +73,7 @@ public PluginClassGenerator(
7473
this.directoryGenerator = DirectoryGenerator.getInstance();
7574
this.fileFromTemplateGenerator = new FileFromTemplateGenerator(project);
7675
this.getFirstClassOfFile = GetFirstClassOfFile.getInstance();
77-
this.fillTextBuffer = FillTextBufferWithPluginMethods.getInstance();
76+
this.fillTextBuffer = new FillTextBufferWithPluginMethods();
7877
this.collectInsertedMethods = CollectInsertedMethods.getInstance();
7978
this.pluginFileData = pluginFileData;
8079
this.project = project;
@@ -86,8 +85,10 @@ public PluginClassGenerator(
8685
* Generate plugin.
8786
*
8887
* @param actionName String
88+
*
8989
* @return PsiFile
9090
*/
91+
@Override
9192
public PsiFile generate(final String actionName) {
9293
final PsiFile[] pluginFile = {null};
9394
WriteCommandAction.runWriteCommandAction(project, () -> {
@@ -227,6 +228,7 @@ private PhpClass createPluginClass(final String actionName) {
227228
return getFirstClassOfFile.execute((PhpFile) pluginFile);
228229
}
229230

231+
@Override
230232
protected void fillAttributes(final Properties attributes) {
231233
attributes.setProperty("NAME", pluginFileData.getPluginClassName());
232234
attributes.setProperty("NAMESPACE", pluginFileData.getNamespace());

0 commit comments

Comments
 (0)