/******************************************************************************* * Copyright (c) 2009-2012 CWI * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * * Jurgen J. Vinju - Jurgen.Vinju@cwi.nl - CWI * * Emilie Balland - (CWI) * * Michael Steindorfer - Michael.Steindorfer@cwi.nl - CWI *******************************************************************************/ package org.rascalmpl.eclipse.nature; import org.eclipse.core.resources.IFolder; import org.eclipse.core.runtime.CoreException; import org.rascalmpl.eclipse.Activator; import org.rascalmpl.eclipse.IRascalResources; import org.rascalmpl.eclipse.util.RascalEclipseManifest; import io.usethesource.impulse.builder.ProjectNatureBase; import io.usethesource.impulse.runtime.IPluginLog; public class Nature extends ProjectNatureBase implements IRascalResources { @Override public String getNatureID() { return IRascalResources.ID_RASCAL_NATURE; } @Override public String getBuilderID() { return IRascalResources.ID_RASCAL_BUILDER; } public void configure() throws CoreException { super.configure(); IFolder folder = this.getProject().getFolder(IRascalResources.RASCAL_SRC); if (!folder.exists()) { folder.create(false, false, null); } new RascalEclipseManifest().createIfNotPresent(this.getProject()); } @Override public IPluginLog getLog() { return Activator.getInstance(); } @Override protected void refreshPrefs() { } }