From be4f78978faba3d3ceb88df02a7f93a2e09ff1e0 Mon Sep 17 00:00:00 2001 From: Kenji Hosokawa Date: Tue, 3 Aug 2021 18:42:39 +0900 Subject: Initial commit Bug-AGL: SPEC-4033 Signed-off-by: Kenji Hosokawa --- .../ui/wizard/RBAEmptyModelNewProjectWizardEx.java | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 rba.tool.editor.ui/src/rba/tool/editor/ui/wizard/RBAEmptyModelNewProjectWizardEx.java (limited to 'rba.tool.editor.ui/src/rba/tool/editor/ui/wizard/RBAEmptyModelNewProjectWizardEx.java') diff --git a/rba.tool.editor.ui/src/rba/tool/editor/ui/wizard/RBAEmptyModelNewProjectWizardEx.java b/rba.tool.editor.ui/src/rba/tool/editor/ui/wizard/RBAEmptyModelNewProjectWizardEx.java new file mode 100644 index 0000000..f845fa9 --- /dev/null +++ b/rba.tool.editor.ui/src/rba/tool/editor/ui/wizard/RBAEmptyModelNewProjectWizardEx.java @@ -0,0 +1,48 @@ +package rba.tool.editor.ui.wizard; + +import java.io.File; +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.nio.file.Paths; + +import org.apache.commons.io.FileUtils; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.core.runtime.Platform; +import org.eclipse.xtext.ui.wizard.IProjectCreator; + +import com.google.inject.Inject; + +public class RBAEmptyModelNewProjectWizardEx extends RBAModelNewProjectWizardEx { + + private static final String DEFAULT_TEMPLATE_PATH = "RBATool\\empty_project"; //$NON-NLS-1$ + + @Inject + public RBAEmptyModelNewProjectWizardEx(IProjectCreator projectCreator) { + super(projectCreator); + } + + @Override + protected void copyResources(IProject project) throws IOException, URISyntaxException, CoreException { + URL installLocationUrl = Platform.getInstallLocation().getURL(); + String installLocationPath = new File(installLocationUrl.getPath()).toString(); + + java.nio.file.Path runtimePath = Paths.get(installLocationPath, DEFAULT_TEMPLATE_PATH); + + URI locationURI = project.getLocationURI(); + + File srcRuntime = new File(runtimePath.toString()); + File dst = new File(locationURI.getPath()); + + if (srcRuntime.exists()) { + FileUtils.copyDirectory(srcRuntime, dst); + } + + project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); + } + +} -- cgit 1.2.3-korg