Merge branch 'refs/heads/bug421957' into xpand2_master
diff --git a/.gitignore b/.gitignore
index b5e0259..645d926 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,4 +4,5 @@
 /releng/org.eclipse.xpand.releng/target.platform/
 /doc/org.eclipse.xpand.doc/bin/
 /releng/org.eclipse.xpand.releng/api-baseline/target/
+/releng/build
 *.orig
\ No newline at end of file
diff --git a/dev/org.eclipse.xpand.devenv/Xpand TP Local.target b/dev/org.eclipse.xpand.devenv/Xpand TP Local.target
index 3f9a995..2bb9573 100644
--- a/dev/org.eclipse.xpand.devenv/Xpand TP Local.target
+++ b/dev/org.eclipse.xpand.devenv/Xpand TP Local.target
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <?pde version="3.8"?>
 
-<target name="Xpand TP Local" sequenceNumber="9">
+<target name="Xpand TP Local" sequenceNumber="10">
 <locations>
-<location path="/Users/thoms/Development/checkout/eclipse/org.eclipse.xpand/releng/org.eclipse.xpand.releng/target/target.platform/plugins" type="Directory"/>
+<location path="${user_homedir}/hudsonbuild/xpand-build/target.platform/plugins" type="Directory"/>
 </locations>
 </target>
diff --git a/dev/org.eclipse.xpand.devenv/Xpand_Install_IDE_Features.launch b/dev/org.eclipse.xpand.devenv/Xpand_Install_IDE_Features.launch
index 555acee..436d067 100644
--- a/dev/org.eclipse.xpand.devenv/Xpand_Install_IDE_Features.launch
+++ b/dev/org.eclipse.xpand.devenv/Xpand_Install_IDE_Features.launch
@@ -13,7 +13,7 @@
 <stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/Xpand_Install_IDE_Features"/>
 <booleanAttribute key="default" value="true"/>
 <booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc:org.eclipse.xpand.devenv}/.runtime-p2"/>
+<stringAttribute key="location" value="${workspace_loc}/.metadata/runtime-p2"/>
 <booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
 <stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog&#10;-destination ${eclipse_home}&#10;-installIU AnyEditTools.feature.group,com.codeaffine.archive.feature.feature.group,org.eclipse.b3.aggregator.editor.feature.feature.group,org.eclipse.buckminster.core.feature.feature.group,org.eclipse.buckminster.maven.feature.feature.group,org.eclipse.buckminster.pde.feature.feature.group,org.eclipse.buckminster.psf.feature.feature.group,com.mountainminds.eclemma.feature.feature.group,org.eclipse.releng.tools.feature.group,org.eclipse.pde.api.tools.ee.j2se15,org.eclipse.pde.api.tools.ee.javase16,org.eclipse.pde.api.tools.ee.javase17,org.eclipse.m2e.feature.feature.group,org.eclipse.emf.mwe2.language.sdk.feature.group,org.eclipse.emf.mwe2.runtime.sdk.feature.group,org.eclipse.emf.mwe.sdk.feature.group,org.eclipse.mylyn.builds.sdk.feature.group,org.eclipse.mylyn.ide.ui,org.eclipse.mylyn.bugzilla_feature.feature.group,org.eclipse.xtext.sdk.feature.group,org.eclipse.uml2.feature.group,name.njbartlett.eclipse.macbadge.feature.feature.group,com.google.eclipse.mechanic.feature.group,org.xpect.sdk.feature.group,de.itemis.xtext.antlr.sdk.feature.group&#10;-r http://download.eclipse.org/releases/kepler,http://download.eclipse.org/eclipse/updates/4.3,http://download.eclipse.org/tools/buckminster/updates-4.2,http://download.eclipse.org/modeling/emft/b3/updates-4.3,http://download.eclipse.org/mylyn/releases/3.8,http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/,http://andrei.gmxhome.de/eclipse/,http://bitstrings.github.com/m2e-connectors-p2/releases,http://download.itemis.com/updates/,http://macbadge-updates.s3.amazonaws.com/,http://jadclipse.sourceforge.net/update,http://update.eclemma.org/,http://rherrmann.github.io/com.codeaffine.archive/repository,http://workspacemechanic.eclipselabs.org.codespot.com/git.update/mechanic,http://www.xpect-tests.org/updatesite/nightly/,http://download.eclipse.org/egit/updates"/>
diff --git a/doc/org.eclipse.xpand.doc-feature/.gitignore b/doc/org.eclipse.xpand.doc-feature/.gitignore
index 0b53baf..f8228d6 100644
--- a/doc/org.eclipse.xpand.doc-feature/.gitignore
+++ b/doc/org.eclipse.xpand.doc-feature/.gitignore
@@ -1,2 +1,2 @@
-features

-plugins

+features
+plugins
diff --git a/plugins/org.eclipse.xpand.ui/src/org/eclipse/xpand/ui/editor/codeassist/XpandContentAssistProcessor.java b/plugins/org.eclipse.xpand.ui/src/org/eclipse/xpand/ui/editor/codeassist/XpandContentAssistProcessor.java
index c439120..1cb5b8c 100644
--- a/plugins/org.eclipse.xpand.ui/src/org/eclipse/xpand/ui/editor/codeassist/XpandContentAssistProcessor.java
+++ b/plugins/org.eclipse.xpand.ui/src/org/eclipse/xpand/ui/editor/codeassist/XpandContentAssistProcessor.java
@@ -50,27 +50,30 @@
  * Computes the Code Completion Proposals when CTRL+SPACE is pressed.
  * 
  * @author Sven Efftinge (http://www.efftinge.de)
- * @since 4.0
  */
-public class XpandContentAssistProcessor extends AbstractExtXptContentAssistProcessor {
+public class XpandContentAssistProcessor extends
+		AbstractExtXptContentAssistProcessor {
 
 	public XpandContentAssistProcessor(final IEditorPart editor) {
 		super(editor);
 	}
 
 	@Override
-	protected ICompletionProposal[] internalComputeCompletionProposals(final ITextViewer viewer,
-			final int documentOffset) {
+	protected ICompletionProposal[] internalComputeCompletionProposals(
+			final ITextViewer viewer, final int documentOffset) {
 		try {
-			final String txt = viewer.getDocument().get().substring(0, documentOffset);
+			final String txt = viewer.getDocument().get()
+					.substring(0, documentOffset);
 			XpandDefinition[] defs = new XpandDefinition[0];
 			final IFile file = getFile();
 
-			final IXpandResource tpl = (IXpandResource) Activator.getExtXptModelManager().findExtXptResource(file);
+			final IXpandResource tpl = (IXpandResource) Activator
+					.getExtXptModelManager().findExtXptResource(file);
 			if (tpl != null) {
 				defs = tpl.getDefinitions();
 			}
-			XpandExecutionContext ctx = (XpandExecutionContext) Activator.getExecutionContext(getJavaProject());
+			XpandExecutionContext ctx = (XpandExecutionContext) Activator
+					.getExecutionContext(getJavaProject());
 			final Partition p = FastAnalyzer.computePartition(txt);
 
 			// Shortcut: No proposals within comments
@@ -83,50 +86,68 @@
 			}
 
 			List<Object> proposals = new ArrayList<Object>();
-			final ProposalFactory f = new XpandProposalFactoryEclipseImpl(documentOffset);
+			final ProposalFactory f = new XpandProposalFactoryEclipseImpl(
+					documentOffset);
 
 			if (p == Partition.TYPE_DECLARATION) {
 				ctx = FastAnalyzer.computeExecutionContext(txt, ctx, defs);
-				proposals = new TypeProposalComputer().computeProposals(txt, ctx, f);
+				proposals = new TypeProposalComputer().computeProposals(txt,
+						ctx, f);
 			} else if (p == Partition.EXPRESSION) {
 				ctx = FastAnalyzer.computeExecutionContext(txt, ctx, defs);
 				// the current expression begins at the last opening Xpand
 				// bracket
-				final String expression = txt.substring(txt.lastIndexOf(XpandTokens.LT_CHAR));
-				proposals.addAll(new ExpressionProposalComputer().computeProposals(expression, ctx, f));
-				proposals.addAll(new KeywordProposalComputer().computeProposals(txt, ctx, f));
+				final String expression = txt.substring(txt
+						.lastIndexOf(XpandTokens.LT_CHAR));
+				proposals.addAll(new ExpressionProposalComputer()
+						.computeProposals(expression, ctx, f));
+				proposals.addAll(new KeywordProposalComputer()
+						.computeProposals(txt, ctx, f));
 			} else if (p == XpandPartition.EXPAND_STATEMENT) {
 				ctx = FastAnalyzer.computeExecutionContext(txt, ctx, defs);
-				proposals.addAll(new ExpandProposalComputer().computeProposals(txt, ctx, f));
-				proposals.add(new org.eclipse.jface.text.contentassist.CompletionProposal(XpandTokens.LT
-						+ XpandTokens.RT, documentOffset, 0, 1));
+				proposals.addAll(new ExpandProposalComputer().computeProposals(
+						txt, ctx, f));
+				proposals
+						.add(new org.eclipse.jface.text.contentassist.CompletionProposal(
+								XpandTokens.LT + XpandTokens.RT,
+								documentOffset, 0, 1));
 			} else if (p == Partition.NAMESPACE_IMPORT) {
 				ctx = FastAnalyzer.computeExecutionContext(txt, ctx, defs);
-				proposals.addAll(new NamespaceProposalComputer().computeProposals(txt, ctx, f));
+				proposals.addAll(new NamespaceProposalComputer()
+						.computeProposals(txt, ctx, f));
 			} else if (p == Partition.EXTENSION_IMPORT) {
-				IXtendXpandProject project = Activator.getExtXptModelManager().findProject(getFile());
-				IXtendXpandResource[] resources = project.getAllRegisteredResources();
+				IXtendXpandProject project = Activator.getExtXptModelManager()
+						.findProject(getFile());
+				IXtendXpandResource[] resources = project
+						.getAllRegisteredResources();
 				Set<String> extensionNames = new HashSet<String>();
 				for (IXtendXpandResource resource : resources) {
 					if (resource instanceof XtendFile) {
 						extensionNames.add(resource.getFullyQualifiedName());
 					}
 				}
-				List<Object> extensionProposals = new ExtensionImportProposalComputer().computeProposals(txt, ctx, f, extensionNames);
+				List<Object> extensionProposals = new ExtensionImportProposalComputer()
+						.computeProposals(txt, ctx, f, extensionNames);
 				proposals.addAll(extensionProposals);
 			} else if (p == Partition.DEFAULT) {
 				ctx = FastAnalyzer.computeExecutionContext(txt, ctx, defs);
-				proposals.addAll(new StatementProposalComputer().computeProposals(txt, ctx, f));
-				proposals.add(new org.eclipse.jface.text.contentassist.CompletionProposal(XpandTokens.LT
-						+ XpandTokens.RT, documentOffset, 0, 1));
+				proposals.addAll(new StatementProposalComputer()
+						.computeProposals(txt, ctx, f));
+				proposals
+						.add(new org.eclipse.jface.text.contentassist.CompletionProposal(
+								XpandTokens.LT + XpandTokens.RT,
+								documentOffset, 0, 1));
 			}
-			// TODO refactor code that methods return List<ICompletionProposals> and not List<Object>
-			List<ICompletionProposal> _proposals = new ArrayList<ICompletionProposal>(proposals.size());
+			// TODO refactor code that methods return List<ICompletionProposals>
+			// and not List<Object>
+			List<ICompletionProposal> _proposals = new ArrayList<ICompletionProposal>(
+					proposals.size());
 			for (Object o : proposals) {
 				_proposals.add((ICompletionProposal) o);
 			}
 			Collections.sort(_proposals, new ProposalComparator());
-			return _proposals.toArray(new ICompletionProposal[proposals.size()]);
+			return _proposals
+					.toArray(new ICompletionProposal[proposals.size()]);
 		} catch (final Exception e) {
 			XpandLog.logError(e);
 		}
@@ -136,7 +157,8 @@
 	/**
 	 * {@inheritDoc}
 	 */
-	public IContextInformation[] computeContextInformation(final ITextViewer viewer, final int documentOffset) {
+	public IContextInformation[] computeContextInformation(
+			final ITextViewer viewer, final int documentOffset) {
 		return null;
 	}
 
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/XpandTokens.java b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/XpandTokens.java
index 494fef4..4a9131b 100755
--- a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/XpandTokens.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/XpandTokens.java
@@ -13,7 +13,6 @@
 
 /**
  * Constants interface containing all Xpand keywords.
- * @since 1.0.0 M5
  */
 public interface XpandTokens {
 
@@ -106,9 +105,9 @@
 	String AROUND = "AROUND";
 
 	String[] ALLKEYWORDS = new String[] { AROUND, AS, CASE, CEND, CSTART,
-			DEFAULT, DEFINE, DISABLE, ELSE, ELSEIF, 
-			ENDAROUND, ENDDEFINE, ENDFILE, ENDFOREACH, ENDIF, ENDLET, ENDPROTECT, ENDREM, ERROR, EXPAND, EXTENSION, 
-			FALSE_CONST, FILE, FOR, FOREACH, ID, IF, IMPORT, ITERATOR, LET, LET_EXPR, NEW, NULL_CONST, ONFILECLOSE, 
+			DEFAULT, DEFINE, DISABLE, ELSE, ELSEIF,
+			ENDAROUND, ENDDEFINE, ENDFILE, ENDFOREACH, ENDIF, ENDLET, ENDPROTECT, ENDREM, ERROR, EXPAND, EXTENSION,
+			FALSE_CONST, FILE, FOR, FOREACH, ID, IF, IMPORT, ITERATOR, LET, LET_EXPR, NEW, NULL_CONST, ONFILECLOSE,
 			PROTECT, REM, SEPARATOR, SWITCH, THIS, TRUE_CONST
 			};
 
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/ast/ExtensionImportDeclaration.java b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/ast/ExtensionImportDeclaration.java
index 849f312..cfb9b3c 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/ast/ExtensionImportDeclaration.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/ast/ExtensionImportDeclaration.java
@@ -17,7 +17,6 @@
 
 /**
  * @author Karsten Thoms - Initial contribution and API
- * @since 1.0
  */
 public class ExtensionImportDeclaration extends ImportDeclaration {
 	public ExtensionImportDeclaration(final Identifier importString) {
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/KeywordProposalComputer.java b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/KeywordProposalComputer.java
index c578ab8..2f664e4 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/KeywordProposalComputer.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/KeywordProposalComputer.java
@@ -22,8 +22,7 @@
 import org.eclipse.xtend.expression.ExecutionContext;
 
 /**
- * Responsible for proposals of Xpand keywords.
- * @since 4.0
+ * Responsible for proposals of Xpand keywords. 
  */
 public class KeywordProposalComputer implements ProposalComputer {
 
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/InsertionPointSupport.java b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/InsertionPointSupport.java
index cc09cd0..9fc0aca 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/InsertionPointSupport.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/InsertionPointSupport.java
@@ -12,7 +12,6 @@
 
 /**
  * @author Karsten Thoms - Initial contribution and API
- * @since 1.0.0 M5
  */
 public interface InsertionPointSupport {
 	void registerInsertionPoint (Statement stmt);
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/JavaBeautifier.java b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/JavaBeautifier.java
index e1de599..70fe2f1 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/JavaBeautifier.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/JavaBeautifier.java
@@ -33,14 +33,13 @@
 
 /**
  * Formats generated Java code using the Eclipse code formatter.
- * 
+ *
  * @author Sven Efftinge (http://www.efftinge.de) (initial)
  * @author Bernd Kolb
  * @author Peter Friese
  * @author Markus Voelter
  * @author Michael Leopoldseder
  * @author Karsten Thoms
- * @since 4.0
  */
 public class JavaBeautifier implements PostProcessor {
 
@@ -91,7 +90,7 @@
 	 * Returns an instance of the Eclipse code formatter. If the user supplied
 	 * the path to a config file, this file will be used to configure the code
 	 * formatter. Otherwise we use the default options supplied with Xpand.
-	 * 
+	 *
 	 * @return a preconfigured instance of the Eclipse code formatter.
 	 */
 	private CodeFormatter getCodeFormatter() {
@@ -101,12 +100,12 @@
 				options = new Properties();
 				options.put("org.eclipse.jdt.core.compiler.compliance","1.5");
 				options.put("org.eclipse.jdt.core.compiler.codegen.targetPlatform","1.5");
-				options.put("org.eclipse.jdt.core.compiler.source","1.5");              
+				options.put("org.eclipse.jdt.core.compiler.source","1.5");
 				log.debug("no config file specified; using the default config file supplied with Xpand: org.eclipse.jdt.core.formatterprefs");
 			} else {
 				options = readConfig(configFile);
 			}
-			
+
 			// instantiate the formatter
 			codeFormatter = ToolFactory.createCodeFormatter(options);
 		}
@@ -121,7 +120,7 @@
 	private Properties readConfig(String filename) {
 		BufferedInputStream stream = null;
 		BufferedReader reader = null;
-		
+
 		try {
 		   InputStream is = openStream(filename);
 		   final Properties formatterOptions = new Properties();
@@ -138,19 +137,19 @@
 			else {
 			   stream = new BufferedInputStream(is);
 			   formatterOptions.load(stream);
-			}        
-			
+			}
+
 		    // add some settings for the compiler options
 	        // which are not included in the Eclipse code style settings
 	        // to make the code formatter working
 	        // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=222736
-		   
+
 		   if( formatterOptions.get("org.eclipse.jdt.core.compiler.compliance") == null )
 			   formatterOptions.put("org.eclipse.jdt.core.compiler.compliance", "1.5");
 		   if( formatterOptions.get("org.eclipse.jdt.core.compiler.codegen.targetPlatform") == null )
 			   formatterOptions.put("org.eclipse.jdt.core.compiler.codegen.targetPlatform", "1.5");
 		   if( formatterOptions.get("org.eclipse.jdt.core.compiler.source") == null )
-			   formatterOptions.put("org.eclipse.jdt.core.compiler.source", "1.5");             
+			   formatterOptions.put("org.eclipse.jdt.core.compiler.source", "1.5");
 			return formatterOptions;
 		} catch (IOException e) {
 			log.warn("Problem reading code formatter config file (" + e.getMessage() + ").");
@@ -176,7 +175,7 @@
 	 /**
 	  * Searches for the given filename as a resource and returns a stream on it. Throws an IOException, if the file
 	  * cannot be found.
-	  * 
+	  *
 	  * @param filename
 	  *				   The name of the file to be searched in the resources.
 	  * @return InputStream for subsequent reading
@@ -189,7 +188,7 @@
 		 }
 		 return is;
 	 }
-	
+
 	/**
 	 * @return the configuration file for the formatter
 	 */
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/PostProcessor.java b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/PostProcessor.java
index e5ff3d4..ef5aa76 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/PostProcessor.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/PostProcessor.java
@@ -16,7 +16,6 @@
  * on the generated file content. This is usually helpful for auto-format the generated code.
  * @author Sven Efftinge (http://www.efftinge.de)
  * @author Karsten Thoms (doc)
- * @since 4.0
  */
 public interface PostProcessor {
 	/**
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoException.java b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoException.java
index 4c42076..f6f8f58 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoException.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoException.java
@@ -11,9 +11,8 @@
 package org.eclipse.xpand2.output;
 
 /**
- * Signals a veto by a {@link VetoStrategy2} implementation. 
+ * Signals a veto by a {@link VetoStrategy2} implementation.
  * @author thoms
- * @since 4.3.1
  */
 public class VetoException extends RuntimeException {
 	private static final long serialVersionUID = 8376169402481644160L;
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoStrategy2.java b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoStrategy2.java
index ed04607..2eed975 100644
--- a/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoStrategy2.java
+++ b/plugins/org.eclipse.xpand/src/org/eclipse/xpand2/output/VetoStrategy2.java
@@ -11,9 +11,8 @@
 package org.eclipse.xpand2.output;
 
 /**
- * 
+ *
  * @author thoms
- * @since 4.3.1
  */
 public interface VetoStrategy2 extends VetoStrategy {
 
diff --git a/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/core/IXtendXpandProject.java b/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/core/IXtendXpandProject.java
index 501061a..a5e16de 100644
--- a/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/core/IXtendXpandProject.java
+++ b/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/core/IXtendXpandProject.java
@@ -21,7 +21,6 @@
  * Represents a project containing openArchitectureWare resources. These are
  * Xpand template, Xtend files, Workflow files etc.
  * 
- * @since 4.0
  */
 public interface IXtendXpandProject extends IAdaptable {
 	/**
diff --git a/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/editor/outlineview/OutlineElementComparator.java b/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/editor/outlineview/OutlineElementComparator.java
index ec7d8a4..80f1754 100644
--- a/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/editor/outlineview/OutlineElementComparator.java
+++ b/plugins/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/editor/outlineview/OutlineElementComparator.java
@@ -23,7 +23,6 @@
  * This class may be instantiated; it is not intended to be subclassed.
  * </p>
  * 
- * @since 3.3
  */
 
 public class OutlineElementComparator extends ViewerComparator {
@@ -41,10 +40,11 @@
 	/*
 	 * (non-Javadoc)
 	 * 
-	 * @see org.eclipse.jface.viewers.ViewerComparator#category(java.lang.Object)
+	 * @see
+	 * org.eclipse.jface.viewers.ViewerComparator#category(java.lang.Object)
 	 */
 	@Override
-	public int category(Object element) {
+	public int category(final Object element) {
 		// for Check Content Outline elements, the category is their type...
 		if (element instanceof OutlineElement)
 			return ((OutlineElement) element).getType();
@@ -54,11 +54,12 @@
 	/*
 	 * (non-Javadoc)
 	 * 
-	 * @see org.eclipse.jface.viewers.ViewerComparator#compare(org.eclipse.jface.viewers.Viewer,
-	 *      java.lang.Object, java.lang.Object)
+	 * @see
+	 * org.eclipse.jface.viewers.ViewerComparator#compare(org.eclipse.jface.
+	 * viewers.Viewer, java.lang.Object, java.lang.Object)
 	 */
 	@Override
-	public int compare(Viewer viewer, Object e1, Object e2) {
+	public int compare(final Viewer viewer, final Object e1, final Object e2) {
 
 		if (!(e1 instanceof OutlineElement))
 			return 0;
@@ -77,11 +78,11 @@
 
 		String label1 = ccoe1.getLabel();
 		String label2 = ccoe2.getLabel();
-		if (label1==label2)
+		if (label1 == label2)
 			return 0;
-		if (label1==null)
+		if (label1 == null)
 			return -1;
-		if (label2==null)
+		if (label2 == null)
 			return 1;
 		return label1.toLowerCase().compareTo(label2.toLowerCase());
 	}
diff --git a/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/EcoreUtil2.java b/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/EcoreUtil2.java
index a8d7136..4895ff6 100644
--- a/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/EcoreUtil2.java
+++ b/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/EcoreUtil2.java
@@ -43,7 +43,6 @@
 /**
  * Provides useful functions for usage of EMF.
  *
- * @since 4.0
  */
 @SuppressWarnings("unchecked")
 public class EcoreUtil2 {
diff --git a/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/XmiWriter.java b/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/XmiWriter.java
index 83403c1..87c3b17 100644
--- a/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/XmiWriter.java
+++ b/plugins/org.eclipse.xtend.typesystem.emf/src/org/eclipse/xtend/typesystem/emf/XmiWriter.java
@@ -41,7 +41,6 @@
  * This component lets you write an EMF model contained in some slot to disc.
  *
  * @author Markus V�lter
- * @since 4.0
  *
  * @deprecated use org.eclipse.mwe.emf.Writer instead
  */
diff --git a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/UML2Writer.java b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/UML2Writer.java
index d2ee46c..98c9ec2 100644
--- a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/UML2Writer.java
+++ b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/UML2Writer.java
@@ -32,17 +32,16 @@
 
 /**
  * This workflow component writes UML2 models with their profiles to a directory.
- * 
+ *
  * <h2>Properties</h2>
  * <ul>
  * <li>inputSlot (required): Slot name containing the UML model.
  * <li>outPath: Output path (within destinationFolder)
  * <li>destinationFolder: Base path (default: './')
  * <li>useUML1x: Write .uml2 files (extension used by UML2 v1.x). Default: false.
- * </ul> 
+ * </ul>
  * @author Benedikt Niehues (Initial implementation)
  * @author Karsten Thoms (docs, maintainance)
- * @since 4.2
  */
 public class UML2Writer extends AbstractWorkflowComponent {
 	private static final Log LOG = LogFactory.getLog(UML2Writer.class);
@@ -52,7 +51,7 @@
 	private String destinationFolder = "./";
 
 	private String inputSlot = WorkflowContext.DEFAULT_SLOT;
-	
+
 	private boolean useUML1x = false;
 
 	public String getDestinationFolder() {
@@ -83,7 +82,7 @@
 			this.outPath = this.outPath.substring(1);
 		}
 	}
-	
+
 	public void setUseUML1x(boolean useUML1x) {
 		this.useUML1x = useUML1x;
 	}
@@ -144,7 +143,7 @@
 	private void saveModel(Package model, ResourceSet rsImpl) {
 		// compute file name, e.g. './src-gen/myModel.uml"
 		String modelFile = destinationFolder + outPath + model.getName() + "."+getUMLFileExtension();
-		
+
 		// create a resource with the model as contents
 		final URI fileURI = URI.createFileURI(modelFile);
 		Resource r = rsImpl.createResource(fileURI);
@@ -165,7 +164,7 @@
 			resource.unload();
 		}
 	}
-	
+
 	/**
 	 * Returns the proper UML file extension.
 	 * @return "uml2" for UML2 v1.x, "uml" for UML2 v2.x
diff --git a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/EnumType.java b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/EnumType.java
index 5dd46db..c87f605 100644
--- a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/EnumType.java
+++ b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/EnumType.java
@@ -25,7 +25,6 @@
 
 /**
  * Represents an enumeration within a profile.
- * @since 4.1
  */
 public class EnumType extends AbstractTypeImpl {
 	/** The Enumeration represented by this. */
@@ -66,7 +65,7 @@
 			public String getDocumentation() {
 				return "Retrieves the name of the enumeration literal.";
 			}
-			
+
         });
         return result.toArray(new Feature[result.size()]);
     }
@@ -83,9 +82,9 @@
     public Object newInstance() {
         throw new UnsupportedOperationException();
     }
-    
+
     public Enumeration getEnumeration () {
     	return enumeration;
     }
-    
+
 }
diff --git a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/MultipleStereotypeType.java b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/MultipleStereotypeType.java
index 4b326a5..099eaab 100644
--- a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/MultipleStereotypeType.java
+++ b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/MultipleStereotypeType.java
@@ -1,98 +1,97 @@
-/*******************************************************************************

- * Copyright (c) 2005, 2007 committers of openArchitectureWare 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 openArchitectureWare - initial API and implementation

- *******************************************************************************/

-package org.eclipse.xtend.typesystem.uml2.profile;

-

-import java.util.ArrayList;

-import java.util.Arrays;

-import java.util.HashSet;

-import java.util.List;

-import java.util.Set;

-

-import org.eclipse.xtend.expression.TypeSystem;

-import org.eclipse.xtend.typesystem.Feature;

-import org.eclipse.xtend.typesystem.Type;

-

-/**

- * This type is used to support assignment of multiple stereotypes to a

- * model element. Methods from the superclass are overridden to evaluate

- * them for each wrapped stereotype.

- * @author karsten.thoms@itemis.de - maintainance

- * @author jochen.schmich@fiducia.de - Bug#388373

- * @author aarnold - type introspection

- * @author pschonbac - maintainance

- * @author bkolb - initial

- * @since oAW 4.2

- */

-public final class MultipleStereotypeType extends StereotypeType {

-	List<StereotypeType> stereotypes;

-

-	public MultipleStereotypeType(TypeSystem typeSystem, List<StereotypeType> stereotypes) {

-		this(typeSystem, stereotypes, null);

-	}

-

-	public MultipleStereotypeType(TypeSystem typeSystem, List<StereotypeType> stereotypes, Type umlType) {

-		super(typeSystem, computeName(stereotypes), null, umlType);

-		this.stereotypes = stereotypes;

-	}

-

-	/** Needed to be called within constructor */

-	private static String computeName (List<StereotypeType> stereotypes) {

-		String result = stereotypes.get(0).getName();

-		for (int i=1; i<stereotypes.size(); i++) {

-			result += ","+stereotypes.get(i).getName();

-		}

-		return result;

-	}

-

-	@Override

-	public Feature[] getContributedFeatures() {

-		List<Feature> features = new ArrayList<Feature>();

-		for (StereotypeType st : stereotypes) {

-			features.addAll(Arrays.asList(st.getContributedFeatures()));

-		}

-		return features.toArray(new Feature[stereotypes.size()]);

-	}

-

-	@Override

-	public Set<Type> getSuperTypes() {

-		Set<Type> superTypes = new HashSet<Type>();

-		for (StereotypeType st : stereotypes) {

-			superTypes.addAll(st.getSuperTypes());

-		}

-		return superTypes;

-	}

-

-	@Override

-	public boolean isInstance(Object o) {

-		for (StereotypeType st : stereotypes) {

-			if (st.isInstance(o)) {

-				return true;

-			}

-		}

-		return false;

-	}

-

-	@Override

-	protected boolean isCompatible(Type t) {

-		for (StereotypeType st : stereotypes) {

-			// umlType is not relevant thus should not be considered here - false is passed in this case

-			if (st.equals(t, false)) {

-				return true;

-			}

-		}

-		return false;

-	}

-

-	public List<StereotypeType> getStereotypes () {

-		return stereotypes;

-	}

-

-}

+/*******************************************************************************
+ * Copyright (c) 2005, 2007 committers of openArchitectureWare 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 openArchitectureWare - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.xtend.typesystem.uml2.profile;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.xtend.expression.TypeSystem;
+import org.eclipse.xtend.typesystem.Feature;
+import org.eclipse.xtend.typesystem.Type;
+
+/**
+ * This type is used to support assignment of multiple stereotypes to a
+ * model element. Methods from the superclass are overridden to evaluate
+ * them for each wrapped stereotype.
+ * @author karsten.thoms@itemis.de - maintainance
+ * @author jochen.schmich@fiducia.de - Bug#388373
+ * @author aarnold - type introspection
+ * @author pschonbac - maintainance
+ * @author bkolb - initial
+ */
+public final class MultipleStereotypeType extends StereotypeType {
+	List<StereotypeType> stereotypes;
+
+	public MultipleStereotypeType(TypeSystem typeSystem, List<StereotypeType> stereotypes) {
+		this(typeSystem, stereotypes, null);
+	}
+
+	public MultipleStereotypeType(TypeSystem typeSystem, List<StereotypeType> stereotypes, Type umlType) {
+		super(typeSystem, computeName(stereotypes), null, umlType);
+		this.stereotypes = stereotypes;
+	}
+
+	/** Needed to be called within constructor */
+	private static String computeName (List<StereotypeType> stereotypes) {
+		String result = stereotypes.get(0).getName();
+		for (int i=1; i<stereotypes.size(); i++) {
+			result += ","+stereotypes.get(i).getName();
+		}
+		return result;
+	}
+
+	@Override
+	public Feature[] getContributedFeatures() {
+		List<Feature> features = new ArrayList<Feature>();
+		for (StereotypeType st : stereotypes) {
+			features.addAll(Arrays.asList(st.getContributedFeatures()));
+		}
+		return features.toArray(new Feature[stereotypes.size()]);
+	}
+
+	@Override
+	public Set<Type> getSuperTypes() {
+		Set<Type> superTypes = new HashSet<Type>();
+		for (StereotypeType st : stereotypes) {
+			superTypes.addAll(st.getSuperTypes());
+		}
+		return superTypes;
+	}
+
+	@Override
+	public boolean isInstance(Object o) {
+		for (StereotypeType st : stereotypes) {
+			if (st.isInstance(o)) {
+				return true;
+			}
+		}
+		return false;
+	}
+
+	@Override
+	protected boolean isCompatible(Type t) {
+		for (StereotypeType st : stereotypes) {
+			// umlType is not relevant thus should not be considered here - false is passed in this case
+			if (st.equals(t, false)) {
+				return true;
+			}
+		}
+		return false;
+	}
+
+	public List<StereotypeType> getStereotypes () {
+		return stereotypes;
+	}
+
+}
diff --git a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/ProfilingExtensions.java b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/ProfilingExtensions.java
index a5f9242..5b3ee51 100644
--- a/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/ProfilingExtensions.java
+++ b/plugins/org.eclipse.xtend.typesystem.uml2/src/org/eclipse/xtend/typesystem/uml2/profile/ProfilingExtensions.java
@@ -34,7 +34,6 @@
  * Extensions for support of UML2 Profiles.
  *
  * @author Karsten Thoms
- * @since 4.2
  */
 public class ProfilingExtensions {
 	private static final Log LOG = LogFactory.getLog(ProfilingExtensions.class);
diff --git a/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/SystemCommand.java b/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/SystemCommand.java
index 90a65ef..4e76ab4 100644
--- a/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/SystemCommand.java
+++ b/plugins/org.eclipse.xtend.util.stdlib/src/org/eclipse/xtend/util/stdlib/SystemCommand.java
@@ -70,7 +70,6 @@
  * </pre>
  *
  * @author Karsten Thoms
- * @since 4.3.1
  */
 public class SystemCommand extends AbstractWorkflowComponent2 {
 	private final static Log log = LogFactory.getLog(SystemCommand.class);
diff --git a/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/util/EncodingDetector.java b/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/util/EncodingDetector.java
index 41e082d..a34c0c0 100644
--- a/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/util/EncodingDetector.java
+++ b/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/util/EncodingDetector.java
@@ -18,12 +18,12 @@
 import org.eclipse.internal.xtend.util.internal.icu.CharsetMatch;
 
 /**
- * This class helps detecting the encoding of some resource by scanning the first bytes from it. 
+ * This class helps detecting the encoding of some resource by scanning the first bytes from it.
+ * 
  * @author Karsten Thoms
- * @since 4.2
  */
 public class EncodingDetector {
-	public static Charset detectEncoding (BufferedInputStream in) throws IOException {
+	public static Charset detectEncoding(final BufferedInputStream in) throws IOException {
 		// Read some bytes from the stream
 		in.mark(65);
 		byte[] buf = new byte[64];
@@ -33,22 +33,22 @@
 		return detectEncoding(buf);
 	}
 
-	public static Charset detectEncoding (byte[] sample) {
+	public static Charset detectEncoding(final byte[] sample) {
 		Charset encoding = null;
 		// Special handling for Xpand files on Mac: Try to detect
 		// the opening Guillemot bracket for MacRoman encoding
-		for (int i=0; i<sample.length; i++) {
-			if (sample[i]==-57) { // opening Guillemot bracket
+		for (byte element : sample) {
+			if (element == -57) { // opening Guillemot bracket
 				encoding = Charset.forName("MacRoman");
 				break;
-			} 
+			}
 		}
 		// Use com.ibm.icu for autodetection
-		if (encoding==null) {
+		if (encoding == null) {
 			CharsetDetector det = new CharsetDetector();
 			det.setText(sample);
 			CharsetMatch match = det.detect();
-			if (match!=null) {
+			if (match != null) {
 				encoding = Charset.forName(match.getName());
 			} else {
 				// fallback: Use System encoding
@@ -57,5 +57,5 @@
 		}
 		return encoding;
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/AbstractExpressionsUsingWorkflowAdvice.java b/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/AbstractExpressionsUsingWorkflowAdvice.java
index a4dbb76..04bc1bb 100644
--- a/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/AbstractExpressionsUsingWorkflowAdvice.java
+++ b/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/AbstractExpressionsUsingWorkflowAdvice.java
@@ -23,7 +23,6 @@
  * Base class for workflow advices for components which use expressions.
  * 
  * @author Karsten Thoms
- * @since 4.3.1
  */
 public abstract class AbstractExpressionsUsingWorkflowAdvice extends AbstractWorkflowAdvice {
 	protected final List<MetaModel> metaModels = new ArrayList<MetaModel>();
diff --git a/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/IExecutionContextAware.java b/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/IExecutionContextAware.java
index d3d4a2b..c8248bf 100644
--- a/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/IExecutionContextAware.java
+++ b/plugins/org.eclipse.xtend/src/org/eclipse/xtend/expression/IExecutionContextAware.java
@@ -11,9 +11,8 @@
  * Implementors of this interface can retrieve an ExecutionContext.
  * 
  * @author Karsten Thoms - Initial contribution and API
- * @since 1.0.0-M4
  */
 public interface IExecutionContextAware {
-	
-	void setExecutionContext (ExecutionContext ctx);
+
+	void setExecutionContext(ExecutionContext ctx);
 }
diff --git a/releng/org.eclipse.xpand.releng/Install Buckminster.launch b/releng/org.eclipse.xpand.releng/Install Buckminster.launch
index 3a735b2..8e6739f 100644
--- a/releng/org.eclipse.xpand.releng/Install Buckminster.launch
+++ b/releng/org.eclipse.xpand.releng/Install Buckminster.launch
@@ -13,13 +13,14 @@
 <booleanAttribute key="clearwslog" value="false"/>
 <stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/Install Buckminster"/>
 <booleanAttribute key="default" value="true"/>
-<stringAttribute key="deselected_workspace_plugins" value="Sandbox,bug400105,gts.common.intmsg.generator,javolution,my.generator.project,oaw_output_performancetest,org.eclipse.emf.generic.editor,org.eclipse.emf.generic.editor.tests,org.eclipse.emf.mwe.core,org.eclipse.emf.mwe.ui,org.eclipse.emf.mwe.ui.simpleEditor,org.eclipse.emf.mwe.utils,org.eclipse.emf.mwe2.lib,org.eclipse.emf.mwe2.runtime,org.eclipse.xpand,org.eclipse.xpand.activities,org.eclipse.xpand.doc,org.eclipse.xpand.doc.api_generator,org.eclipse.xpand.examples,org.eclipse.xpand.examples.support.cdt,org.eclipse.xpand.examples.xsd.m2m.ecore2xsd,org.eclipse.xpand.examples.xsd.m2m.news2xhtml,org.eclipse.xpand.examples.xsd.m2m.xml2svg,org.eclipse.xpand.examples.xsd.m2t.genmodel,org.eclipse.xpand.examples.xsd.m2t.minimal,org.eclipse.xpand.examples.xsd.m2t.xml2javawizard,org.eclipse.xpand.incremental,org.eclipse.xpand.incremental.tests,org.eclipse.xpand.support.cdt,org.eclipse.xpand.tests,org.eclipse.xpand.ui,org.eclipse.xtend,org.eclipse.xtend.backend,org.eclipse.xtend.backend.compiler,org.eclipse.xtend.backend.test,org.eclipse.xtend.backend.ui,org.eclipse.xtend.backend.uml2types,org.eclipse.xtend.backend.uml2types.test,org.eclipse.xtend.backend.xsdtypes,org.eclipse.xtend.check.ui,org.eclipse.xtend.middleend.old.test,org.eclipse.xtend.middleend.xpand,org.eclipse.xtend.middleend.xpand.test,org.eclipse.xtend.middleend.xpand.ui,org.eclipse.xtend.middleend.xtend,org.eclipse.xtend.middleend.xtend.test,org.eclipse.xtend.middleend.xtend.ui,org.eclipse.xtend.profiler,org.eclipse.xtend.profiler.tests,org.eclipse.xtend.shared.ui,org.eclipse.xtend.shared.ui.test,org.eclipse.xtend.tests,org.eclipse.xtend.typesystem.emf,org.eclipse.xtend.typesystem.emf.tests,org.eclipse.xtend.typesystem.emf.ui,org.eclipse.xtend.typesystem.uml2,org.eclipse.xtend.typesystem.uml2.ui,org.eclipse.xtend.typesystem.xsd,org.eclipse.xtend.typesystem.xsd.tests,org.eclipse.xtend.typesystem.xsd.ui,org.eclipse.xtend.ui,org.eclipse.xtend.util.stdlib,org.eclipse.xtend.util.stdlib.tests,org.eclipse.xtend.util.uml2ecore,utf8.test.generator,xpand.ocl.test,xpand.ocl.test.edit,xpand.ocl.test.editor,xpand.ocl.test.generator,xpand.uml.sample"/>
+<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.emf.generic.editor,org.eclipse.emf.generic.editor.tests,org.eclipse.xpand,org.eclipse.xpand.activities,org.eclipse.xpand.doc,org.eclipse.xpand.doc.api_generator,org.eclipse.xpand.examples,org.eclipse.xpand.examples.support.cdt,org.eclipse.xpand.examples.xsd.m2m.ecore2xsd,org.eclipse.xpand.examples.xsd.m2m.news2xhtml,org.eclipse.xpand.examples.xsd.m2m.xml2svg,org.eclipse.xpand.examples.xsd.m2t.genmodel,org.eclipse.xpand.examples.xsd.m2t.minimal,org.eclipse.xpand.examples.xsd.m2t.xml2javawizard,org.eclipse.xpand.incremental,org.eclipse.xpand.incremental.tests,org.eclipse.xpand.support.cdt,org.eclipse.xpand.tests,org.eclipse.xpand.ui,org.eclipse.xtend,org.eclipse.xtend.backend,org.eclipse.xtend.backend.compiler,org.eclipse.xtend.backend.test,org.eclipse.xtend.backend.ui,org.eclipse.xtend.backend.uml2types,org.eclipse.xtend.backend.uml2types.test,org.eclipse.xtend.backend.xsdtypes,org.eclipse.xtend.check.ui,org.eclipse.xtend.middleend.old.test,org.eclipse.xtend.middleend.xpand,org.eclipse.xtend.middleend.xpand.test,org.eclipse.xtend.middleend.xpand.ui,org.eclipse.xtend.middleend.xtend,org.eclipse.xtend.middleend.xtend.test,org.eclipse.xtend.middleend.xtend.ui,org.eclipse.xtend.profiler,org.eclipse.xtend.profiler.tests,org.eclipse.xtend.shared.ui,org.eclipse.xtend.shared.ui.test,org.eclipse.xtend.tests,org.eclipse.xtend.typesystem.emf,org.eclipse.xtend.typesystem.emf.tests,org.eclipse.xtend.typesystem.emf.ui,org.eclipse.xtend.typesystem.uml2,org.eclipse.xtend.typesystem.uml2.ui,org.eclipse.xtend.typesystem.xsd,org.eclipse.xtend.typesystem.xsd.tests,org.eclipse.xtend.typesystem.xsd.ui,org.eclipse.xtend.ui,org.eclipse.xtend.util.stdlib,org.eclipse.xtend.util.stdlib.tests,org.eclipse.xtend.util.uml2ecore"/>
 <stringAttribute key="featureDefaultLocation" value="workspace"/>
 <stringAttribute key="featurePluginResolution" value="workspace"/>
 <booleanAttribute key="includeOptional" value="true"/>
 <stringAttribute key="location" value="${workspace_loc}/.metadata/runtime-p2"/>
+<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
 <stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog&#10;-r http://download.eclipse.org/tools/buckminster/headless-4.3/&#10;-d ${project_loc:org.eclipse.xpand.releng}/buckminster&#10;-p Buckminster&#10;-i org.eclipse.buckminster.cmdline.product,,org.eclipse.buckminster.pde,org.eclipse.buckminster.pde.source,org.eclipse.buckminster.core.source,org.eclipse.buckminster.fetcher,org.eclipse.buckminster.junit,org.eclipse.buckminster.junit.source,org.eclipse.pde.launching"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog&#10;-r http://download.eclipse.org/tools/buckminster/headless-4.2/,http://download.eclipse.org/eclipse/updates/3.8&#10;-d ${user_homedir}/buckminster&#10;-p Buckminster&#10;-i org.eclipse.buckminster.cmdline.product,org.eclipse.buckminster.pde,org.eclipse.buckminster.fetcher,org.eclipse.buckminster.junit,org.eclipse.pde.launching"/>
 <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
 <stringAttribute key="pde.version" value="3.3"/>
 <stringAttribute key="product" value="org.eclipse.sdk.ide"/>
diff --git a/releng/org.eclipse.xpand.releng/api-baseline/build.xml b/releng/org.eclipse.xpand.releng/api-baseline/build.xml
deleted file mode 100644
index 9be02a8..0000000
--- a/releng/org.eclipse.xpand.releng/api-baseline/build.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<project name="Xpand API Baseline" default="setup" basedir="..">
-	<property name="tp.build.root" value="../build"/>
-
-	<target name="setup" depends="fetch-baseline,build-targetplatform">
-		<copy todir="api-baseline/target/xpand">
-			<fileset dir="${tp.build.root}/target.platform"/>
-		</copy>
-	</target>
-	
-	<target name="-init">
-		<available property="exists.tp" file="target/target.platform/artifacts.xml"/>
-	</target>
-	
-
-	<target name="fetch-baseline" depends="-init" >
-		<mkdir dir="target/xpand"/>
-		<get
-			src="http://mirror.netcologne.de/eclipse/modeling/m2t/xpand/downloads/drops/1.3.0/R201302260541/m2t-xpand-Update-1.3.0.zip"
-			dest="api-baseline/target/m2t-xpand-Update-1.3.0.zip"
-			skipexisting="true"
-			/>
-		<unzip src="api-baseline/target/m2t-xpand-Update-1.3.0.zip" dest="api-baseline/target/xpand"/>
-	</target>
-	
-	<target name="build-targetplatform" depends="-init" unless="exists.tp"
-		description="Call local Buckminster Target Platform build">
-		<ant antfile="releng/local/local-build.ant">
-			<property name="build.root" value="../build"/>
-		</ant>
-	</target>
-</project>
\ No newline at end of file
diff --git a/releng/org.eclipse.xpand.releng/api-baseline/readme.txt b/releng/org.eclipse.xpand.releng/api-baseline/readme.txt
index 43ac166..830d4c4 100644
--- a/releng/org.eclipse.xpand.releng/api-baseline/readme.txt
+++ b/releng/org.eclipse.xpand.releng/api-baseline/readme.txt
@@ -1,7 +1,10 @@
 How to set API Baseline.
 ========================
 
-1. Run "Install Buckminster.launch"
-2. Run Ant script build.xml
-4. Open API-Baseline settings
-5. Add new baseline name Xpand, location {your_local_git_repo}/releng/org.eclipse.xpand.releng/api-baseline/xpand/target
\ No newline at end of file
+1. Open api-baseline.target
+2. Click Export icon in the upper right corner
+3. Select destination: <USER_HOME>/hudsonbuild/xpand-build/api-baseline
+4. Open Workspace Preferences: Plug-in Development / API Baselines
+5. Create Baseline
+   - Name: Xpand API Baseline
+   - Location: <USER_HOME>/hudsonbuild/xpand-build/api-baseline
diff --git a/releng/org.eclipse.xpand.releng/releng/.gitignore b/releng/org.eclipse.xpand.releng/releng/.gitignore
new file mode 100644
index 0000000..9bb88d3
--- /dev/null
+++ b/releng/org.eclipse.xpand.releng/releng/.gitignore
@@ -0,0 +1 @@
+/.DS_Store