From 9cd2ca74fa2488972ce882da076f62688af63cb5 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Thu, 7 Feb 2013 14:51:38 +0400 Subject: [PATCH] SaveProjectAsTemplateAction: filtering .idea content --- .../templates/SaveProjectAsTemplateAction.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/java/idea-ui/src/com/intellij/platform/templates/SaveProjectAsTemplateAction.java b/java/idea-ui/src/com/intellij/platform/templates/SaveProjectAsTemplateAction.java index e320cbdf6308..c873488d406e 100644 --- a/java/idea-ui/src/com/intellij/platform/templates/SaveProjectAsTemplateAction.java +++ b/java/idea-ui/src/com/intellij/platform/templates/SaveProjectAsTemplateAction.java @@ -188,12 +188,23 @@ public class SaveProjectAsTemplateAction extends AnAction { @Override public boolean processFile(final VirtualFile virtualFile) { if (!virtualFile.isDirectory()) { - indicator.setText2(virtualFile.getName()); + String name = virtualFile.getName(); + indicator.setText2(name); try { String relativePath = VfsUtilCore.getRelativePath(virtualFile, dir, '/'); if (relativePath == null) { throw new RuntimeException("Can't find relative path for " + virtualFile); } + boolean system = ".idea".equals(virtualFile.getParent().getName()); + if (system) { + if (!name.equals("description.html") && + !name.equals("misc.xml") && + !name.equals("modules.xml") && + !name.equals("workspace.xml")) { + return true; + } + } + ZipUtil.addFileToZip(finalStream, new File(virtualFile.getPath()), dir.getName() + "/" + relativePath, null, null, new ZipUtil.FileContentProcessor() { @Override public InputStream getContent(File file) throws IOException { @@ -213,8 +224,6 @@ public class SaveProjectAsTemplateAction extends AnAction { } } indicator.checkCanceled(); - // if (!".idea".equals(fileName.getParent())) return true; - // todo filter out some garbage from .idea return true; } });