/** * Copyright (c) 2016 committers of YAKINDU and others. * 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: * committers of YAKINDU - initial API and implementation * */ package org.yakindu.sct.generator.core.filesystem; import java.util.Map; import org.eclipse.xtext.generator.IFileSystemAccess; import org.eclipse.xtext.generator.IFileSystemAccessExtension2; import org.eclipse.xtext.generator.OutputConfiguration; import com.google.inject.ImplementedBy; /** * Is meant to be some kind of bridge between file system mappings within SCT * (SGEN) & the xtext.generator.IFileSystemAccess. * * The SCT M2T generators use the minimal functionality provided by the basic * interface xtext.generator.IFileSystemAccess during transformation. * * @see {@link org.eclipse.xtext.generator.IFileSystemAccess} * * @author Johannes Dicks - Initial contribution and API * */ @ImplementedBy(SCTJavaIoFileSystemAccess.class) public interface ISCTFileSystemAccess extends IFileSystemAccess, IFileSystemAccessExtension2{ String TARGET_FOLDER_OUTPUT = IFileSystemAccess.DEFAULT_OUTPUT; String LIBRARY_TARGET_FOLDER_OUTPUT = "LIBRARY_TARGET_FOLDER"; String API_TARGET_FOLDER_OUTPUT = "API_TARGET_FOLDER"; /** * Add an output path for an output name. * * @param outletFeatureTargetProject * @param stringValue */ void setOutputPath(String outputName, String relativePath); /** * Set the default output path. * * @param relativePath * @see IFileSystemAccess#DEFAULT_OUTPUT */ void setOutputPath(String relativePath); Map<String, OutputConfiguration> getOutputConfigurations(); public void setContext(String projectName); }