From 16c89e7d00ac55cb35f5a14263bf73a769a71c8f Mon Sep 17 00:00:00 2001 From: "Maxim.Mossienko" Date: Wed, 12 Jul 2017 17:48:39 +0200 Subject: [PATCH] [performance] Removed accessing of FileTemplateManager during startup --- .../packaging/setupPy/CreateSetupPyAction.java | 15 +++++++-------- .../setupPy/PyCreateSetupPyFromTemplateHandler.kt | 2 +- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/python/src/com/jetbrains/python/packaging/setupPy/CreateSetupPyAction.java b/python/src/com/jetbrains/python/packaging/setupPy/CreateSetupPyAction.java index 7bfff46bdbf1..749938ae36a8 100644 --- a/python/src/com/jetbrains/python/packaging/setupPy/CreateSetupPyAction.java +++ b/python/src/com/jetbrains/python/packaging/setupPy/CreateSetupPyAction.java @@ -16,7 +16,6 @@ package com.jetbrains.python.packaging.setupPy; import com.intellij.ide.IdeView; -import com.intellij.ide.fileTemplates.FileTemplate; import com.intellij.ide.fileTemplates.FileTemplateManager; import com.intellij.ide.fileTemplates.actions.AttributesDefaults; import com.intellij.ide.fileTemplates.actions.CreateFromTemplateAction; @@ -38,6 +37,7 @@ import com.intellij.psi.PsiDirectory; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiManager; import com.intellij.util.SystemProperties; +import com.jetbrains.python.PythonFileType; import com.jetbrains.python.packaging.PyPackageUtil; import com.jetbrains.python.psi.PyUtil; @@ -50,18 +50,17 @@ import java.util.Properties; public class CreateSetupPyAction extends CreateFromTemplateAction { private static final String AUTHOR_PROPERTY = "python.packaging.author"; private static final String EMAIL_PROPERTY = "python.packaging.author.email"; + static final String SETUP_SCRIPT_TEMPLATE_NAME = "Setup Script"; public CreateSetupPyAction() { - super(FileTemplateManager.getDefaultInstance().getInternalTemplate("Setup Script")); + super( + SETUP_SCRIPT_TEMPLATE_NAME, + PythonFileType.INSTANCE.getIcon(), + () -> FileTemplateManager.getDefaultInstance().getInternalTemplate(SETUP_SCRIPT_TEMPLATE_NAME) + ); getTemplatePresentation().setText("Create setup.py"); } - @Override - public FileTemplate getTemplate() { - // to ensure changes are picked up, reload the template on every call (PY-6681) - return FileTemplateManager.getDefaultInstance().getInternalTemplate("Setup Script"); - } - @Override public void update(AnActionEvent e) { final Module module = e.getData(LangDataKeys.MODULE); diff --git a/python/src/com/jetbrains/python/packaging/setupPy/PyCreateSetupPyFromTemplateHandler.kt b/python/src/com/jetbrains/python/packaging/setupPy/PyCreateSetupPyFromTemplateHandler.kt index 13edb770944d..27a7b901353a 100644 --- a/python/src/com/jetbrains/python/packaging/setupPy/PyCreateSetupPyFromTemplateHandler.kt +++ b/python/src/com/jetbrains/python/packaging/setupPy/PyCreateSetupPyFromTemplateHandler.kt @@ -23,7 +23,7 @@ import com.intellij.openapi.util.text.StringUtil class PyCreateSetupPyFromTemplateHandler : DefaultCreateFromTemplateHandler() { override fun handlesTemplate(template: FileTemplate?): Boolean { - return template == FileTemplateManager.getDefaultInstance().getInternalTemplate("Setup Script") + return template == FileTemplateManager.getDefaultInstance().getInternalTemplate(CreateSetupPyAction.SETUP_SCRIPT_TEMPLATE_NAME) } override fun prepareProperties(props: MutableMap?) {