Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-07-28 06:14:34 +0000
committerEike Stepper2013-07-28 06:14:34 +0000
commita54bb74fadb270122adf81f909693bf3be056aac (patch)
treefaf0066f51649da9ef9bf1e7e225db54e90ee23c
parent2d8461ad6399b296b82bc9e7749a65945907426b (diff)
downloadcdo-a54bb74fadb270122adf81f909693bf3be056aac.tar.gz
cdo-a54bb74fadb270122adf81f909693bf3be056aac.tar.xz
cdo-a54bb74fadb270122adf81f909693bf3be056aac.zip
Add setup tool
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.gitbash/plugin.xml2
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.edit/icons/full/obj16/LinkLocation.gifbin0 -> 215 bytes
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.edit/plugin.properties4
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/LinkLocationItemProvider.java180
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/PreferencesItemProvider.java41
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/SetupItemProviderAdapterFactory.java31
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/GitClones.java5
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Prefs.java (renamed from plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Preferences.java)22
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/SetupIDE.java2
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup.product/src/org/eclipse/emf/cdo/releng/setup/product/SetupDialog.java36
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/model/Configuration.xmi1
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecore26
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecorediag36
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/model/setup.genmodel5
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/LinkLocation.java78
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/Preferences.java18
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupFactory.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupPackage.java241
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/LinkLocationImpl.java234
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/PreferencesImpl.java61
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupFactoryImpl.java17
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupPackageImpl.java111
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupAdapterFactory.java45
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupSwitch.java56
24 files changed, 1120 insertions, 141 deletions
diff --git a/plugins/org.eclipse.emf.cdo.releng.gitbash/plugin.xml b/plugins/org.eclipse.emf.cdo.releng.gitbash/plugin.xml
index 80662b7501..bf9cd77347 100644
--- a/plugins/org.eclipse.emf.cdo.releng.gitbash/plugin.xml
+++ b/plugins/org.eclipse.emf.cdo.releng.gitbash/plugin.xml
@@ -146,7 +146,7 @@
<decorator
class="org.eclipse.emf.cdo.releng.gitbash.decorators.BranchDecorator"
id="org.eclipse.emf.cdo.releng.gitbash.BranchDecorator"
- label="Branch Upstream Infos"
+ label="Git Upstream Infos"
lightweight="false"
state="true">
<enablement>
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.edit/icons/full/obj16/LinkLocation.gif b/plugins/org.eclipse.emf.cdo.releng.setup.edit/icons/full/obj16/LinkLocation.gif
new file mode 100644
index 0000000000..d0b5c15991
--- /dev/null
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.edit/icons/full/obj16/LinkLocation.gif
Binary files differ
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.edit/plugin.properties b/plugins/org.eclipse.emf.cdo.releng.setup.edit/plugin.properties
index 70f6fc49d6..5dd66ba4c0 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.edit/plugin.properties
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.edit/plugin.properties
@@ -92,3 +92,7 @@ _UI_JRE_JRE_16_literal = JRE_16
_UI_JRE_JRE_17_literal = JRE_17
_UI_JRE_JRE_18_literal = JRE_18
_UI_Setup_updateLocations_feature = Update Locations
+_UI_LinkLocation_type = Link Location
+_UI_Preferences_linkLocations_feature = Link Locations
+_UI_LinkLocation_path_feature = Path
+_UI_LinkLocation_name_feature = Name
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/LinkLocationItemProvider.java b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/LinkLocationItemProvider.java
new file mode 100644
index 0000000000..2570210119
--- /dev/null
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/LinkLocationItemProvider.java
@@ -0,0 +1,180 @@
+/**
+ */
+package org.eclipse.emf.cdo.releng.setup.provider;
+
+import org.eclipse.emf.cdo.releng.setup.LinkLocation;
+import org.eclipse.emf.cdo.releng.setup.SetupPackage;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.emf.cdo.releng.setup.LinkLocation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class LinkLocationItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
+ IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource
+{
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LinkLocationItemProvider(AdapterFactory adapterFactory)
+ {
+ super(adapterFactory);
+ }
+
+ /**
+ * This returns the property descriptors for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object)
+ {
+ if (itemPropertyDescriptors == null)
+ {
+ super.getPropertyDescriptors(object);
+
+ addPathPropertyDescriptor(object);
+ addNamePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Path feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addPathPropertyDescriptor(Object object)
+ {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(
+ ((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(),
+ getString("_UI_LinkLocation_path_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_LinkLocation_path_feature", "_UI_LinkLocation_type"),
+ SetupPackage.Literals.LINK_LOCATION__PATH, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNamePropertyDescriptor(Object object)
+ {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(
+ ((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(),
+ getString("_UI_LinkLocation_name_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_LinkLocation_name_feature", "_UI_LinkLocation_type"),
+ SetupPackage.Literals.LINK_LOCATION__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null, null));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean hasChildren(Object object)
+ {
+ return hasChildren(object, true);
+ }
+
+ /**
+ * This returns LinkLocation.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object)
+ {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/LinkLocation"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object)
+ {
+ String label = ((LinkLocation)object).getPath();
+ return label == null || label.length() == 0 ? getString("_UI_LinkLocation_type")
+ : getString("_UI_LinkLocation_type") + " " + label;
+ }
+
+ /**
+ * This handles model notifications by calling {@link #updateChildren} to update any cached
+ * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void notifyChanged(Notification notification)
+ {
+ updateChildren(notification);
+
+ switch (notification.getFeatureID(LinkLocation.class))
+ {
+ case SetupPackage.LINK_LOCATION__PATH:
+ case SetupPackage.LINK_LOCATION__NAME:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ }
+ super.notifyChanged(notification);
+ }
+
+ /**
+ * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+ * that can be created under this object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object)
+ {
+ super.collectNewChildDescriptors(newChildDescriptors, object);
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator()
+ {
+ return SetupEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/PreferencesItemProvider.java b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/PreferencesItemProvider.java
index 2ed98166d8..b15f09b8be 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/PreferencesItemProvider.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/PreferencesItemProvider.java
@@ -11,9 +11,11 @@
package org.eclipse.emf.cdo.releng.setup.provider;
import org.eclipse.emf.cdo.releng.setup.Preferences;
+import org.eclipse.emf.cdo.releng.setup.SetupFactory;
import org.eclipse.emf.cdo.releng.setup.SetupPackage;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
@@ -134,6 +136,39 @@ public class PreferencesItemProvider extends ToolInstallationItemProvider implem
}
/**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object)
+ {
+ if (childrenFeatures == null)
+ {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(SetupPackage.Literals.PREFERENCES__LINK_LOCATIONS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child)
+ {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
* This returns Preferences.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -179,6 +214,9 @@ public class PreferencesItemProvider extends ToolInstallationItemProvider implem
case SetupPackage.PREFERENCES__GIT_PREFIX:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ return;
}
super.notifyChanged(notification);
}
@@ -194,6 +232,9 @@ public class PreferencesItemProvider extends ToolInstallationItemProvider implem
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object)
{
super.collectNewChildDescriptors(newChildDescriptors, object);
+
+ newChildDescriptors.add(createChildParameter(SetupPackage.Literals.PREFERENCES__LINK_LOCATIONS,
+ SetupFactory.eINSTANCE.createLinkLocation()));
}
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/SetupItemProviderAdapterFactory.java b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/SetupItemProviderAdapterFactory.java
index a6cfbe4d3a..d2d21a513e 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/SetupItemProviderAdapterFactory.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.edit/src/org/eclipse/emf/cdo/releng/setup/provider/SetupItemProviderAdapterFactory.java
@@ -357,6 +357,31 @@ public class SetupItemProviderAdapterFactory extends SetupAdapterFactory impleme
}
/**
+ * This keeps track of the one adapter used for all {@link org.eclipse.emf.cdo.releng.setup.LinkLocation} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LinkLocationItemProvider linkLocationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.emf.cdo.releng.setup.LinkLocation}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createLinkLocationAdapter()
+ {
+ if (linkLocationItemProvider == null)
+ {
+ linkLocationItemProvider = new LinkLocationItemProvider(this);
+ }
+
+ return linkLocationItemProvider;
+ }
+
+ /**
* This keeps track of the one adapter used for all {@link org.eclipse.emf.cdo.releng.setup.Preferences} instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -494,6 +519,10 @@ public class SetupItemProviderAdapterFactory extends SetupAdapterFactory impleme
{
if (preferencesItemProvider != null)
preferencesItemProvider.dispose();
+ if (linkLocationItemProvider != null)
+ linkLocationItemProvider.dispose();
+ if (toolPreferenceItemProvider != null)
+ toolPreferenceItemProvider.dispose();
if (eclipseVersionItemProvider != null)
eclipseVersionItemProvider.dispose();
if (directorCallItemProvider != null)
@@ -514,8 +543,6 @@ public class SetupItemProviderAdapterFactory extends SetupAdapterFactory impleme
gitCloneItemProvider.dispose();
if (setupItemProvider != null)
setupItemProvider.dispose();
- if (toolPreferenceItemProvider != null)
- toolPreferenceItemProvider.dispose();
}
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/GitClones.java b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/GitClones.java
index bbf69a0ffa..1097445d09 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/GitClones.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/GitClones.java
@@ -53,16 +53,15 @@ public final class GitClones
{
if (workDir.isDirectory())
{
- Activator.log("Git init: " + workDir);
+ Progress.log().addLine("Opening Git clone " + workDir);
git = Git.open(workDir);
}
else
{
- Activator.log("Git clone: " + workDir);
-
URI baseURI = URI.createURI(gitClone.getRemoteURI());
String remote = URI.createHierarchicalURI(baseURI.scheme(), userName + "@" + baseURI.authority(),
baseURI.device(), baseURI.segments(), baseURI.query(), baseURI.fragment()).toString();
+ Progress.log().addLine("Cloning Git repo " + remote + " to " + workDir);
CloneCommand command = Git.cloneRepository();
command.setURI(remote);
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Preferences.java b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Prefs.java
index 3e39b0ae63..a534a5405c 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Preferences.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/Prefs.java
@@ -11,6 +11,7 @@
package org.eclipse.emf.cdo.releng.setup.ide;
import org.eclipse.emf.cdo.releng.setup.Branch;
+import org.eclipse.emf.cdo.releng.setup.Preferences;
import org.eclipse.emf.cdo.releng.setup.Project;
import org.eclipse.emf.cdo.releng.setup.Setup;
import org.eclipse.emf.cdo.releng.setup.ToolInstallation;
@@ -23,7 +24,7 @@ import org.eclipse.core.runtime.preferences.IEclipsePreferences;
/**
* @author Eike Stepper
*/
-public final class Preferences
+public final class Prefs
{
private static final SetupContext CONTEXT = Activator.getDefault();
@@ -31,15 +32,22 @@ public final class Preferences
public static void init() throws Exception
{
- set("instance/org.eclipse.ui.workbench/RUN_IN_BACKGROUND", "true");
-
Setup setup = CONTEXT.getSetup();
- init(setup.getPreferences());
-
Branch branch = setup.getBranch();
- init(branch);
-
Project project = branch.getProject();
+
+ String name = project.getName();
+ if (!"master".equals(branch.getName()))
+ {
+ name += " " + branch.getName();
+ }
+
+ set("instance/org.eclipse.ui.ide/WORKSPACE_NAME", name);
+ set("instance/org.eclipse.ui.workbench/RUN_IN_BACKGROUND", "true");
+
+ Preferences preferences = setup.getPreferences();
+ init(preferences);
+ init(branch);
init(project);
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/SetupIDE.java b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/SetupIDE.java
index b4b9e5d374..96a6a4105a 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/SetupIDE.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.ide/src/org/eclipse/emf/cdo/releng/setup/ide/SetupIDE.java
@@ -88,7 +88,7 @@ public final class SetupIDE
if (state < 2)
{
- Preferences.init();
+ Prefs.init();
saveState(2);
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup.product/src/org/eclipse/emf/cdo/releng/setup/product/SetupDialog.java b/plugins/org.eclipse.emf.cdo.releng.setup.product/src/org/eclipse/emf/cdo/releng/setup/product/SetupDialog.java
index 08af5554e7..e13038753f 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup.product/src/org/eclipse/emf/cdo/releng/setup/product/SetupDialog.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup.product/src/org/eclipse/emf/cdo/releng/setup/product/SetupDialog.java
@@ -14,6 +14,7 @@ import org.eclipse.emf.cdo.releng.setup.Branch;
import org.eclipse.emf.cdo.releng.setup.Configuration;
import org.eclipse.emf.cdo.releng.setup.DirectorCall;
import org.eclipse.emf.cdo.releng.setup.EclipseVersion;
+import org.eclipse.emf.cdo.releng.setup.LinkLocation;
import org.eclipse.emf.cdo.releng.setup.P2Repository;
import org.eclipse.emf.cdo.releng.setup.Preferences;
import org.eclipse.emf.cdo.releng.setup.Project;
@@ -87,6 +88,7 @@ import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -735,6 +737,8 @@ public class SetupDialog extends TitleAreaDialog
install(bundlePool, destination, updateLocations, branch);
install(bundlePool, destination, updateLocations, preferences);
+ install(preferences.getLinkLocations(), destination);
+
File branchFolder = new File(branchURI.toFileString());
mangleEclipseIni(destination, branchFolder, gitPrefix);
@@ -753,8 +757,8 @@ public class SetupDialog extends TitleAreaDialog
launchIDE(setup, branchFolder);
}
- private static void install(String bundlePool, String destination, Set<String> updateLocations,
- ToolInstallation installation) throws Exception
+ private void install(String bundlePool, String destination, Set<String> updateLocations, ToolInstallation installation)
+ throws Exception
{
for (DirectorCall directorCall : installation.getDirectorCalls())
{
@@ -762,8 +766,7 @@ public class SetupDialog extends TitleAreaDialog
}
}
- private static void install(String bundlePool, String destination, Set<String> updateLocations,
- DirectorCall directorCall)
+ private void install(String bundlePool, String destination, Set<String> updateLocations, DirectorCall directorCall)
{
Director.install(bundlePool, directorCall, destination);
for (P2Repository p2Repository : directorCall.getP2Repositories())
@@ -772,6 +775,31 @@ public class SetupDialog extends TitleAreaDialog
}
}
+ private void install(EList<LinkLocation> linkLocations, String destination) throws Exception
+ {
+ if (!linkLocations.isEmpty())
+ {
+ File links = new File(destination, "links");
+ links.mkdirs();
+
+ for (LinkLocation linkLocation : linkLocations)
+ {
+ File path = new File(linkLocation.getPath()).getCanonicalFile();
+
+ String name = linkLocation.getName();
+ if (name == null || name.length() == 0)
+ {
+ name = path.getName();
+ }
+
+ File link = new File(links, name + ".link");
+
+ List<String> lines = Collections.singletonList("path=" + path.toString().replace("\\", "\\\\"));
+ OS.INSTANCE.writeText(link, lines);
+ }
+ }
+ }
+
private void mangleEclipseIni(String destination, File branchFolder, String gitPrefix)
{
File eclipseIni = new File(destination, "eclipse.ini");
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/model/Configuration.xmi b/plugins/org.eclipse.emf.cdo.releng.setup/model/Configuration.xmi
index 3cd6f78ff5..53b7fe5b68 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/model/Configuration.xmi
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/model/Configuration.xmi
@@ -48,6 +48,7 @@
<toolPreferences key="instance/org.eclipse.ui.ide/EXIT_PROMPT_ON_CLOSE_LAST_WINDOW" value="false"/>
<toolPreferences key="instance/org.eclipse.jdt.launching/org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE" value="ignore"/>
<toolPreferences key="instance/org.eclipse.pde/compilers.f.unresolved-features" value="2"/>
+ <toolPreferences key="instance/org.eclipse.core.resources/description.disableLinking" value="true"/>
<branches name="master" apiBaseline="//@projects.1/@apiBaselines.0" mspecFilePath="cdo/plugins/org.eclipse.emf.cdo.releng/local.mspec" cloneVariableName="git.clone">
<directorCalls>
<installableUnits id="org.eclipse.emf.sdk.feature.group"/>
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecore b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecore
index a33b00014d..d506d6a766 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecore
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecore
@@ -6,6 +6,22 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="bundlePool" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="installFolder" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="gitPrefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="linkLocations" upperBound="-1"
+ eType="#//LinkLocation" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LinkLocation">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ToolInstallation" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="directorCalls" upperBound="-1"
+ eType="#//DirectorCall" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="toolPreferences" upperBound="-1"
+ eType="#//ToolPreference" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ToolPreference">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EclipseVersion">
<eStructuralFeatures xsi:type="ecore:EReference" name="configuration" eType="#//Configuration"
@@ -36,12 +52,6 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="eclipseVersions" lowerBound="1"
upperBound="-1" eType="#//EclipseVersion" containment="true" eOpposite="#//EclipseVersion/configuration"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="ToolInstallation" abstract="true">
- <eStructuralFeatures xsi:type="ecore:EReference" name="directorCalls" upperBound="-1"
- eType="#//DirectorCall" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="toolPreferences" upperBound="-1"
- eType="#//ToolPreference" containment="true"/>
- </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Project" eSuperTypes="#//ToolInstallation">
<eStructuralFeatures xsi:type="ecore:EReference" name="configuration" eType="#//Configuration"
eOpposite="#//Configuration/projects"/>
@@ -91,8 +101,4 @@
eType="#//P2Repository" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="URI" instanceClassName="org.eclipse.emf.common.util.URI"/>
- <eClassifiers xsi:type="ecore:EClass" name="ToolPreference">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- </eClassifiers>
</ecore:EPackage>
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecorediag b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecorediag
index 71b1fc38d0..ea4966c655 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecorediag
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.ecorediag
@@ -280,6 +280,30 @@
<element xmi:type="ecore:EClass" href="setup.ecore#//ToolPreference"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_LJQ64vTrEeKROP7mUifaFQ" x="735" y="23"/>
</children>
+ <children xmi:type="notation:Node" xmi:id="_iK-h0PdCEeKAgoQldAmgzQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_iK-h0_dCEeKAgoQldAmgzQ" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_iK-h1PdCEeKAgoQldAmgzQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_k60zQPdCEeKAgoQldAmgzQ" type="2001">
+ <element xmi:type="ecore:EAttribute" href="setup.ecore#//LinkLocation/path"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_k60zQfdCEeKAgoQldAmgzQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_T7AxQPdEEeKAgoQldAmgzQ" type="2001">
+ <element xmi:type="ecore:EAttribute" href="setup.ecore#//LinkLocation/name"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T7AxQfdEEeKAgoQldAmgzQ"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_iK-h1fdCEeKAgoQldAmgzQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iK-h1vdCEeKAgoQldAmgzQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iK-h1_dCEeKAgoQldAmgzQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_iLIS0PdCEeKAgoQldAmgzQ" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_iLIS0fdCEeKAgoQldAmgzQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iLIS0vdCEeKAgoQldAmgzQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iLIS0_dCEeKAgoQldAmgzQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_iK-h0fdCEeKAgoQldAmgzQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="setup.ecore#//LinkLocation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iK-h0vdCEeKAgoQldAmgzQ" x="1077" y="370"/>
+ </children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_u_e_seoIEeKpRf481yfX-g"/>
<element xmi:type="ecore:EPackage" href="setup.ecore#/"/>
<edges xmi:type="notation:Edge" xmi:id="_4esFEOoIEeKpRf481yfX-g" type="3002" source="_zoytIOoIEeKpRf481yfX-g" target="_2Y42MOoIEeKpRf481yfX-g">
@@ -602,4 +626,16 @@
<element xmi:type="ecore:EReference" href="setup.ecore#//Setup/updateLocations"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fi28Q_XSEeKGErZDYCqYOg" points="[11, 21, 658, -398]$[11, 415, 658, -4]$[-597, 415, 50, -4]"/>
</edges>
+ <edges xmi:type="notation:Edge" xmi:id="_q56n4PdCEeKAgoQldAmgzQ" type="3002" source="_bOTg8OoYEeKpRf481yfX-g" target="_iK-h0PdCEeKAgoQldAmgzQ">
+ <children xmi:type="notation:Node" xmi:id="_q6EY4PdCEeKAgoQldAmgzQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_q6EY4fdCEeKAgoQldAmgzQ" x="-5" y="-47"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_q6EY4vdCEeKAgoQldAmgzQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_q6EY4_dCEeKAgoQldAmgzQ" x="-5" y="15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_q56n4fdCEeKAgoQldAmgzQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_q56n4vdCEeKAgoQldAmgzQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="setup.ecore#//Preferences/linkLocations"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_q56n4_dCEeKAgoQldAmgzQ" points="[-5, 50, -5, -106]$[-5, 132, -5, -24]"/>
+ </edges>
</notation:Diagram>
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.genmodel b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.genmodel
index 1330b63197..d7488715a0 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.genmodel
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/model/setup.genmodel
@@ -14,6 +14,7 @@
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//Preferences/bundlePool"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//Preferences/installFolder"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//Preferences/gitPrefix"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference setup.ecore#//Preferences/linkLocations"/>
</genClasses>
<genClasses ecoreClass="setup.ecore#//EclipseVersion">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference setup.ecore#//EclipseVersion/configuration"/>
@@ -83,5 +84,9 @@
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//ToolPreference/key"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//ToolPreference/value"/>
</genClasses>
+ <genClasses ecoreClass="setup.ecore#//LinkLocation" labelFeature="#//setup/LinkLocation/path">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//LinkLocation/path"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute setup.ecore#//LinkLocation/name"/>
+ </genClasses>
</genPackages>
</genmodel:GenModel>
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/LinkLocation.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/LinkLocation.java
new file mode 100644
index 0000000000..3dd296022e
--- /dev/null
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/LinkLocation.java
@@ -0,0 +1,78 @@
+/**
+ */
+package org.eclipse.emf.cdo.releng.setup;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Link Location</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.cdo.releng.setup.SetupPackage#getLinkLocation()
+ * @model
+ * @generated
+ */
+public interface LinkLocation extends EObject
+{
+ /**
+ * Returns the value of the '<em><b>Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Path</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Path</em>' attribute.
+ * @see #setPath(String)
+ * @see org.eclipse.emf.cdo.releng.setup.SetupPackage#getLinkLocation_Path()
+ * @model
+ * @generated
+ */
+ String getPath();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getPath <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Path</em>' attribute.
+ * @see #getPath()
+ * @generated
+ */
+ void setPath(String value);
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.emf.cdo.releng.setup.SetupPackage#getLinkLocation_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // LinkLocation
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/Preferences.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/Preferences.java
index d5ec50bfe5..70dbf11647 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/Preferences.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/Preferences.java
@@ -13,6 +13,7 @@ package org.eclipse.emf.cdo.releng.setup;
import org.eclipse.emf.common.util.URI;
import java.io.File;
+import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
@@ -26,6 +27,7 @@ import java.io.File;
* <li>{@link org.eclipse.emf.cdo.releng.setup.Preferences#getBundlePool <em>Bundle Pool</em>}</li>
* <li>{@link org.eclipse.emf.cdo.releng.setup.Preferences#getInstallFolder <em>Install Folder</em>}</li>
* <li>{@link org.eclipse.emf.cdo.releng.setup.Preferences#getGitPrefix <em>Git Prefix</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.Preferences#getLinkLocations <em>Link Locations</em>}</li>
* </ul>
* </p>
*
@@ -144,4 +146,20 @@ public interface Preferences extends ToolInstallation
*/
void setGitPrefix(String value);
+ /**
+ * Returns the value of the '<em><b>Link Locations</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.cdo.releng.setup.LinkLocation}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Link Locations</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Link Locations</em>' containment reference list.
+ * @see org.eclipse.emf.cdo.releng.setup.SetupPackage#getPreferences_LinkLocations()
+ * @model containment="true"
+ * @generated
+ */
+ EList<LinkLocation> getLinkLocations();
+
} // Preferences
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupFactory.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupFactory.java
index ab117c9e12..c072236719 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupFactory.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupFactory.java
@@ -130,6 +130,15 @@ public interface SetupFactory extends EFactory
ToolPreference createToolPreference();
/**
+ * Returns a new object of class '<em>Link Location</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Link Location</em>'.
+ * @generated
+ */
+ LinkLocation createLinkLocation();
+
+ /**
* Returns a new object of class '<em>Preferences</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupPackage.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupPackage.java
index 4777eafa9e..0f95d556bd 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupPackage.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/SetupPackage.java
@@ -74,7 +74,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getConfiguration()
* @generated
*/
- int CONFIGURATION = 5;
+ int CONFIGURATION = 8;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.ToolInstallationImpl <em>Tool Installation</em>}' class.
@@ -84,7 +84,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getToolInstallation()
* @generated
*/
- int TOOL_INSTALLATION = 6;
+ int TOOL_INSTALLATION = 2;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.ProjectImpl <em>Project</em>}' class.
@@ -94,7 +94,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getProject()
* @generated
*/
- int PROJECT = 7;
+ int PROJECT = 9;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.BranchImpl <em>Branch</em>}' class.
@@ -104,7 +104,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getBranch()
* @generated
*/
- int BRANCH = 8;
+ int BRANCH = 10;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.EclipseVersionImpl <em>Eclipse Version</em>}' class.
@@ -114,7 +114,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getEclipseVersion()
* @generated
*/
- int ECLIPSE_VERSION = 1;
+ int ECLIPSE_VERSION = 4;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.DirectorCallImpl <em>Director Call</em>}' class.
@@ -124,7 +124,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getDirectorCall()
* @generated
*/
- int DIRECTOR_CALL = 2;
+ int DIRECTOR_CALL = 5;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.InstallableUnitImpl <em>Installable Unit</em>}' class.
@@ -134,7 +134,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getInstallableUnit()
* @generated
*/
- int INSTALLABLE_UNIT = 3;
+ int INSTALLABLE_UNIT = 6;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.P2RepositoryImpl <em>P2 Repository</em>}' class.
@@ -144,7 +144,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getP2Repository()
* @generated
*/
- int P2_REPOSITORY = 4;
+ int P2_REPOSITORY = 7;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.ApiBaselineImpl <em>Api Baseline</em>}' class.
@@ -154,7 +154,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getApiBaseline()
* @generated
*/
- int API_BASELINE = 9;
+ int API_BASELINE = 11;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.GitCloneImpl <em>Git Clone</em>}' class.
@@ -164,7 +164,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getGitClone()
* @generated
*/
- int GIT_CLONE = 10;
+ int GIT_CLONE = 12;
/**
* The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl <em>Preferences</em>}' class.
@@ -258,13 +258,106 @@ public interface SetupPackage extends EPackage
int PREFERENCES__GIT_PREFIX = TOOL_INSTALLATION_FEATURE_COUNT + 3;
/**
+ * The feature id for the '<em><b>Link Locations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PREFERENCES__LINK_LOCATIONS = TOOL_INSTALLATION_FEATURE_COUNT + 4;
+
+ /**
* The number of structural features of the '<em>Preferences</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int PREFERENCES_FEATURE_COUNT = TOOL_INSTALLATION_FEATURE_COUNT + 4;
+ int PREFERENCES_FEATURE_COUNT = TOOL_INSTALLATION_FEATURE_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.SetupImpl <em>Setup</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.cdo.releng.setup.impl.SetupImpl
+ * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getSetup()
+ * @generated
+ */
+ int SETUP = 13;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.ToolPreferenceImpl <em>Tool Preference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.cdo.releng.setup.impl.ToolPreferenceImpl
+ * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getToolPreference()
+ * @generated
+ */
+ int TOOL_PREFERENCE = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl <em>Link Location</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl
+ * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getLinkLocation()
+ * @generated
+ */
+ int LINK_LOCATION = 1;
+
+ /**
+ * The feature id for the '<em><b>Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINK_LOCATION__PATH = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINK_LOCATION__NAME = 1;
+
+ /**
+ * The number of structural features of the '<em>Link Location</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINK_LOCATION_FEATURE_COUNT = 2;
+
+ /**
+ * The feature id for the '<em><b>Key</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOOL_PREFERENCE__KEY = 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOOL_PREFERENCE__VALUE = 1;
+
+ /**
+ * The number of structural features of the '<em>Tool Preference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOOL_PREFERENCE_FEATURE_COUNT = 2;
/**
* The feature id for the '<em><b>Configuration</b></em>' container reference.
@@ -636,16 +729,6 @@ public interface SetupPackage extends EPackage
int GIT_CLONE_FEATURE_COUNT = 4;
/**
- * The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.SetupImpl <em>Setup</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.cdo.releng.setup.impl.SetupImpl
- * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getSetup()
- * @generated
- */
- int SETUP = 11;
-
- /**
* The feature id for the '<em><b>Branch</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -691,43 +774,6 @@ public interface SetupPackage extends EPackage
int SETUP_FEATURE_COUNT = 4;
/**
- * The meta object id for the '{@link org.eclipse.emf.cdo.releng.setup.impl.ToolPreferenceImpl <em>Tool Preference</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.cdo.releng.setup.impl.ToolPreferenceImpl
- * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getToolPreference()
- * @generated
- */
- int TOOL_PREFERENCE = 12;
-
- /**
- * The feature id for the '<em><b>Key</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int TOOL_PREFERENCE__KEY = 0;
-
- /**
- * The feature id for the '<em><b>Value</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int TOOL_PREFERENCE__VALUE = 1;
-
- /**
- * The number of structural features of the '<em>Tool Preference</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int TOOL_PREFERENCE_FEATURE_COUNT = 2;
-
- /**
* The meta object id for the '<em>URI</em>' data type.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -735,7 +781,7 @@ public interface SetupPackage extends EPackage
* @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getURI()
* @generated
*/
- int URI = 13;
+ int URI = 14;
/**
* Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.setup.Configuration <em>Configuration</em>}'.
@@ -1254,6 +1300,38 @@ public interface SetupPackage extends EPackage
EAttribute getToolPreference_Value();
/**
+ * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation <em>Link Location</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Link Location</em>'.
+ * @see org.eclipse.emf.cdo.releng.setup.LinkLocation
+ * @generated
+ */
+ EClass getLinkLocation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getPath <em>Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Path</em>'.
+ * @see org.eclipse.emf.cdo.releng.setup.LinkLocation#getPath()
+ * @see #getLinkLocation()
+ * @generated
+ */
+ EAttribute getLinkLocation_Path();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.emf.cdo.releng.setup.LinkLocation#getName()
+ * @see #getLinkLocation()
+ * @generated
+ */
+ EAttribute getLinkLocation_Name();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.setup.Preferences <em>Preferences</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1308,6 +1386,17 @@ public interface SetupPackage extends EPackage
EAttribute getPreferences_GitPrefix();
/**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.emf.cdo.releng.setup.Preferences#getLinkLocations <em>Link Locations</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Link Locations</em>'.
+ * @see org.eclipse.emf.cdo.releng.setup.Preferences#getLinkLocations()
+ * @see #getPreferences()
+ * @generated
+ */
+ EReference getPreferences_LinkLocations();
+
+ /**
* Returns the meta object for data type '{@link org.eclipse.emf.common.util.URI <em>URI</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1751,6 +1840,32 @@ public interface SetupPackage extends EPackage
EAttribute TOOL_PREFERENCE__VALUE = eINSTANCE.getToolPreference_Value();
/**
+ * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl <em>Link Location</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl
+ * @see org.eclipse.emf.cdo.releng.setup.impl.SetupPackageImpl#getLinkLocation()
+ * @generated
+ */
+ EClass LINK_LOCATION = eINSTANCE.getLinkLocation();
+
+ /**
+ * The meta object literal for the '<em><b>Path</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINK_LOCATION__PATH = eINSTANCE.getLinkLocation_Path();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINK_LOCATION__NAME = eINSTANCE.getLinkLocation_Name();
+
+ /**
* The meta object literal for the '{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl <em>Preferences</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1793,6 +1908,14 @@ public interface SetupPackage extends EPackage
EAttribute PREFERENCES__GIT_PREFIX = eINSTANCE.getPreferences_GitPrefix();
/**
+ * The meta object literal for the '<em><b>Link Locations</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PREFERENCES__LINK_LOCATIONS = eINSTANCE.getPreferences_LinkLocations();
+
+ /**
* The meta object literal for the '<em>URI</em>' data type.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/LinkLocationImpl.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/LinkLocationImpl.java
new file mode 100644
index 0000000000..3c646387de
--- /dev/null
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/LinkLocationImpl.java
@@ -0,0 +1,234 @@
+/**
+ */
+package org.eclipse.emf.cdo.releng.setup.impl;
+
+import org.eclipse.emf.cdo.releng.setup.LinkLocation;
+import org.eclipse.emf.cdo.releng.setup.SetupPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Link Location</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.impl.LinkLocationImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class LinkLocationImpl extends MinimalEObjectImpl.Container implements LinkLocation
+{
+ /**
+ * The default value of the '{@link #getPath() <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPath()
+ * @generated
+ * @ordered
+ */
+ protected static final String PATH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPath() <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPath()
+ * @generated
+ * @ordered
+ */
+ protected String path = PATH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LinkLocationImpl()
+ {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass()
+ {
+ return SetupPackage.Literals.LINK_LOCATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPath()
+ {
+ return path;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPath(String newPath)
+ {
+ String oldPath = path;
+ path = newPath;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SetupPackage.LINK_LOCATION__PATH, oldPath, path));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName()
+ {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName)
+ {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SetupPackage.LINK_LOCATION__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType)
+ {
+ switch (featureID)
+ {
+ case SetupPackage.LINK_LOCATION__PATH:
+ return getPath();
+ case SetupPackage.LINK_LOCATION__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue)
+ {
+ switch (featureID)
+ {
+ case SetupPackage.LINK_LOCATION__PATH:
+ setPath((String)newValue);
+ return;
+ case SetupPackage.LINK_LOCATION__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID)
+ {
+ switch (featureID)
+ {
+ case SetupPackage.LINK_LOCATION__PATH:
+ setPath(PATH_EDEFAULT);
+ return;
+ case SetupPackage.LINK_LOCATION__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID)
+ {
+ switch (featureID)
+ {
+ case SetupPackage.LINK_LOCATION__PATH:
+ return PATH_EDEFAULT == null ? path != null : !PATH_EDEFAULT.equals(path);
+ case SetupPackage.LINK_LOCATION__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString()
+ {
+ if (eIsProxy())
+ return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (path: ");
+ result.append(path);
+ result.append(", name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //LinkLocationImpl
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/PreferencesImpl.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/PreferencesImpl.java
index 7a7914fc14..39c8830f36 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/PreferencesImpl.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/PreferencesImpl.java
@@ -10,11 +10,18 @@
*/
package org.eclipse.emf.cdo.releng.setup.impl;
+import java.util.Collection;
+import org.eclipse.emf.cdo.releng.setup.LinkLocation;
import org.eclipse.emf.cdo.releng.setup.Preferences;
import org.eclipse.emf.cdo.releng.setup.SetupPackage;
import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
/**
* <!-- begin-user-doc -->
@@ -27,6 +34,7 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
* <li>{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl#getBundlePool <em>Bundle Pool</em>}</li>
* <li>{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl#getInstallFolder <em>Install Folder</em>}</li>
* <li>{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl#getGitPrefix <em>Git Prefix</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.setup.impl.PreferencesImpl#getLinkLocations <em>Link Locations</em>}</li>
* </ul>
* </p>
*
@@ -115,6 +123,16 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
protected String gitPrefix = GIT_PREFIX_EDEFAULT;
/**
+ * The cached value of the '{@link #getLinkLocations() <em>Link Locations</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLinkLocations()
+ * @generated
+ * @ordered
+ */
+ protected EList<LinkLocation> linkLocations;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -235,6 +253,37 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
* <!-- end-user-doc -->
* @generated
*/
+ public EList<LinkLocation> getLinkLocations()
+ {
+ if (linkLocations == null)
+ {
+ linkLocations = new EObjectContainmentEList<LinkLocation>(LinkLocation.class, this,
+ SetupPackage.PREFERENCES__LINK_LOCATIONS);
+ }
+ return linkLocations;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+ {
+ switch (featureID)
+ {
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ return ((InternalEList<?>)getLinkLocations()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType)
{
@@ -248,6 +297,8 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
return getInstallFolder();
case SetupPackage.PREFERENCES__GIT_PREFIX:
return getGitPrefix();
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ return getLinkLocations();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -257,6 +308,7 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
* <!-- end-user-doc -->
* @generated
*/
+ @SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue)
{
@@ -274,6 +326,10 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
case SetupPackage.PREFERENCES__GIT_PREFIX:
setGitPrefix((String)newValue);
return;
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ getLinkLocations().clear();
+ getLinkLocations().addAll((Collection<? extends LinkLocation>)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -300,6 +356,9 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
case SetupPackage.PREFERENCES__GIT_PREFIX:
setGitPrefix(GIT_PREFIX_EDEFAULT);
return;
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ getLinkLocations().clear();
+ return;
}
super.eUnset(featureID);
}
@@ -322,6 +381,8 @@ public class PreferencesImpl extends ToolInstallationImpl implements Preferences
return INSTALL_FOLDER_EDEFAULT == null ? installFolder != null : !INSTALL_FOLDER_EDEFAULT.equals(installFolder);
case SetupPackage.PREFERENCES__GIT_PREFIX:
return GIT_PREFIX_EDEFAULT == null ? gitPrefix != null : !GIT_PREFIX_EDEFAULT.equals(gitPrefix);
+ case SetupPackage.PREFERENCES__LINK_LOCATIONS:
+ return linkLocations != null && !linkLocations.isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupFactoryImpl.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupFactoryImpl.java
index ab21b128a7..efcd362915 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupFactoryImpl.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupFactoryImpl.java
@@ -73,6 +73,10 @@ public class SetupFactoryImpl extends EFactoryImpl implements SetupFactory
{
case SetupPackage.PREFERENCES:
return createPreferences();
+ case SetupPackage.LINK_LOCATION:
+ return createLinkLocation();
+ case SetupPackage.TOOL_PREFERENCE:
+ return createToolPreference();
case SetupPackage.ECLIPSE_VERSION:
return createEclipseVersion();
case SetupPackage.DIRECTOR_CALL:
@@ -93,8 +97,6 @@ public class SetupFactoryImpl extends EFactoryImpl implements SetupFactory
return createGitClone();
case SetupPackage.SETUP:
return createSetup();
- case SetupPackage.TOOL_PREFERENCE:
- return createToolPreference();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
@@ -260,6 +262,17 @@ public class SetupFactoryImpl extends EFactoryImpl implements SetupFactory
* <!-- end-user-doc -->
* @generated
*/
+ public LinkLocation createLinkLocation()
+ {
+ LinkLocationImpl linkLocation = new LinkLocationImpl();
+ return linkLocation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public Preferences createPreferences()
{
PreferencesImpl preferences = new PreferencesImpl();
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupPackageImpl.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupPackageImpl.java
index 98363d365c..538decaa18 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupPackageImpl.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/impl/SetupPackageImpl.java
@@ -17,6 +17,7 @@ import org.eclipse.emf.cdo.releng.setup.DirectorCall;
import org.eclipse.emf.cdo.releng.setup.EclipseVersion;
import org.eclipse.emf.cdo.releng.setup.GitClone;
import org.eclipse.emf.cdo.releng.setup.InstallableUnit;
+import org.eclipse.emf.cdo.releng.setup.LinkLocation;
import org.eclipse.emf.cdo.releng.setup.P2Repository;
import org.eclipse.emf.cdo.releng.setup.Preferences;
import org.eclipse.emf.cdo.releng.setup.Project;
@@ -130,6 +131,13 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
* <!-- end-user-doc -->
* @generated
*/
+ private EClass linkLocationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
private EClass preferencesEClass = null;
/**
@@ -688,6 +696,36 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
* <!-- end-user-doc -->
* @generated
*/
+ public EClass getLinkLocation()
+ {
+ return linkLocationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLinkLocation_Path()
+ {
+ return (EAttribute)linkLocationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLinkLocation_Name()
+ {
+ return (EAttribute)linkLocationEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getPreferences()
{
return preferencesEClass;
@@ -738,6 +776,16 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
* <!-- end-user-doc -->
* @generated
*/
+ public EReference getPreferences_LinkLocations()
+ {
+ return (EReference)preferencesEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EDataType getURI()
{
return uriEDataType;
@@ -779,6 +827,19 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
createEAttribute(preferencesEClass, PREFERENCES__BUNDLE_POOL);
createEAttribute(preferencesEClass, PREFERENCES__INSTALL_FOLDER);
createEAttribute(preferencesEClass, PREFERENCES__GIT_PREFIX);
+ createEReference(preferencesEClass, PREFERENCES__LINK_LOCATIONS);
+
+ linkLocationEClass = createEClass(LINK_LOCATION);
+ createEAttribute(linkLocationEClass, LINK_LOCATION__PATH);
+ createEAttribute(linkLocationEClass, LINK_LOCATION__NAME);
+
+ toolInstallationEClass = createEClass(TOOL_INSTALLATION);
+ createEReference(toolInstallationEClass, TOOL_INSTALLATION__DIRECTOR_CALLS);
+ createEReference(toolInstallationEClass, TOOL_INSTALLATION__TOOL_PREFERENCES);
+
+ toolPreferenceEClass = createEClass(TOOL_PREFERENCE);
+ createEAttribute(toolPreferenceEClass, TOOL_PREFERENCE__KEY);
+ createEAttribute(toolPreferenceEClass, TOOL_PREFERENCE__VALUE);
eclipseVersionEClass = createEClass(ECLIPSE_VERSION);
createEReference(eclipseVersionEClass, ECLIPSE_VERSION__CONFIGURATION);
@@ -801,10 +862,6 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
createEReference(configurationEClass, CONFIGURATION__PROJECTS);
createEReference(configurationEClass, CONFIGURATION__ECLIPSE_VERSIONS);
- toolInstallationEClass = createEClass(TOOL_INSTALLATION);
- createEReference(toolInstallationEClass, TOOL_INSTALLATION__DIRECTOR_CALLS);
- createEReference(toolInstallationEClass, TOOL_INSTALLATION__TOOL_PREFERENCES);
-
projectEClass = createEClass(PROJECT);
createEReference(projectEClass, PROJECT__CONFIGURATION);
createEReference(projectEClass, PROJECT__BRANCHES);
@@ -836,10 +893,6 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
createEReference(setupEClass, SETUP__PREFERENCES);
createEReference(setupEClass, SETUP__UPDATE_LOCATIONS);
- toolPreferenceEClass = createEClass(TOOL_PREFERENCE);
- createEAttribute(toolPreferenceEClass, TOOL_PREFERENCE__KEY);
- createEAttribute(toolPreferenceEClass, TOOL_PREFERENCE__VALUE);
-
// Create data types
uriEDataType = createEDataType(URI);
}
@@ -890,6 +943,32 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
IS_ORDERED);
initEAttribute(getPreferences_GitPrefix(), ecorePackage.getEString(), "gitPrefix", null, 0, 1, Preferences.class,
!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getPreferences_LinkLocations(), this.getLinkLocation(), null, "linkLocations", null, 0, -1,
+ Preferences.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(linkLocationEClass, LinkLocation.class, "LinkLocation", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getLinkLocation_Path(), ecorePackage.getEString(), "path", null, 0, 1, LinkLocation.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getLinkLocation_Name(), ecorePackage.getEString(), "name", null, 0, 1, LinkLocation.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(toolInstallationEClass, ToolInstallation.class, "ToolInstallation", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getToolInstallation_DirectorCalls(), this.getDirectorCall(), null, "directorCalls", null, 0, -1,
+ ToolInstallation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getToolInstallation_ToolPreferences(), this.getToolPreference(), null, "toolPreferences", null, 0,
+ -1, ToolInstallation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(toolPreferenceEClass, ToolPreference.class, "ToolPreference", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getToolPreference_Key(), ecorePackage.getEString(), "key", null, 0, 1, ToolPreference.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getToolPreference_Value(), ecorePackage.getEString(), "value", null, 0, 1, ToolPreference.class,
+ !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(eclipseVersionEClass, EclipseVersion.class, "EclipseVersion", !IS_ABSTRACT, !IS_INTERFACE,
IS_GENERATED_INSTANCE_CLASS);
@@ -938,15 +1017,6 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
!IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
IS_ORDERED);
- initEClass(toolInstallationEClass, ToolInstallation.class, "ToolInstallation", IS_ABSTRACT, !IS_INTERFACE,
- IS_GENERATED_INSTANCE_CLASS);
- initEReference(getToolInstallation_DirectorCalls(), this.getDirectorCall(), null, "directorCalls", null, 0, -1,
- ToolInstallation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
- !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getToolInstallation_ToolPreferences(), this.getToolPreference(), null, "toolPreferences", null, 0,
- -1, ToolInstallation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
- !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
initEClass(projectEClass, Project.class, "Project", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getProject_Configuration(), this.getConfiguration(), this.getConfiguration_Projects(),
"configuration", null, 0, 1, Project.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
@@ -1021,13 +1091,6 @@ public class SetupPackageImpl extends EPackageImpl implements SetupPackage
Setup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEClass(toolPreferenceEClass, ToolPreference.class, "ToolPreference", !IS_ABSTRACT, !IS_INTERFACE,
- IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getToolPreference_Key(), ecorePackage.getEString(), "key", null, 0, 1, ToolPreference.class,
- !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getToolPreference_Value(), ecorePackage.getEString(), "value", null, 0, 1, ToolPreference.class,
- !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
// Initialize data types
initEDataType(uriEDataType, org.eclipse.emf.common.util.URI.class, "URI", IS_SERIALIZABLE,
!IS_GENERATED_INSTANCE_CLASS);
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupAdapterFactory.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupAdapterFactory.java
index 8aa310d3c2..ecd94719cb 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupAdapterFactory.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupAdapterFactory.java
@@ -99,6 +99,24 @@ public class SetupAdapterFactory extends AdapterFactoryImpl
}
@Override
+ public Adapter caseLinkLocation(LinkLocation object)
+ {
+ return createLinkLocationAdapter();
+ }
+
+ @Override
+ public Adapter caseToolInstallation(ToolInstallation object)
+ {
+ return createToolInstallationAdapter();
+ }
+
+ @Override
+ public Adapter caseToolPreference(ToolPreference object)
+ {
+ return createToolPreferenceAdapter();
+ }
+
+ @Override
public Adapter caseEclipseVersion(EclipseVersion object)
{
return createEclipseVersionAdapter();
@@ -129,12 +147,6 @@ public class SetupAdapterFactory extends AdapterFactoryImpl
}
@Override
- public Adapter caseToolInstallation(ToolInstallation object)
- {
- return createToolInstallationAdapter();
- }
-
- @Override
public Adapter caseProject(Project object)
{
return createProjectAdapter();
@@ -165,12 +177,6 @@ public class SetupAdapterFactory extends AdapterFactoryImpl
}
@Override
- public Adapter caseToolPreference(ToolPreference object)
- {
- return createToolPreferenceAdapter();
- }
-
- @Override
public Adapter defaultCase(EObject object)
{
return createEObjectAdapter();
@@ -372,6 +378,21 @@ public class SetupAdapterFactory extends AdapterFactoryImpl
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.setup.LinkLocation <em>Link Location</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.emf.cdo.releng.setup.LinkLocation
+ * @generated
+ */
+ public Adapter createLinkLocationAdapter()
+ {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.setup.Preferences <em>Preferences</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
diff --git a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupSwitch.java b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupSwitch.java
index 5efa55147a..2ba459bac9 100644
--- a/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupSwitch.java
+++ b/plugins/org.eclipse.emf.cdo.releng.setup/src/org/eclipse/emf/cdo/releng/setup/util/SetupSwitch.java
@@ -96,6 +96,30 @@ public class SetupSwitch<T>
result = defaultCase(theEObject);
return result;
}
+ case SetupPackage.LINK_LOCATION:
+ {
+ LinkLocation linkLocation = (LinkLocation)theEObject;
+ T result = caseLinkLocation(linkLocation);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case SetupPackage.TOOL_INSTALLATION:
+ {
+ ToolInstallation toolInstallation = (ToolInstallation)theEObject;
+ T result = caseToolInstallation(toolInstallation);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case SetupPackage.TOOL_PREFERENCE:
+ {
+ ToolPreference toolPreference = (ToolPreference)theEObject;
+ T result = caseToolPreference(toolPreference);
+ if (result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
case SetupPackage.ECLIPSE_VERSION:
{
EclipseVersion eclipseVersion = (EclipseVersion)theEObject;
@@ -136,14 +160,6 @@ public class SetupSwitch<T>
result = defaultCase(theEObject);
return result;
}
- case SetupPackage.TOOL_INSTALLATION:
- {
- ToolInstallation toolInstallation = (ToolInstallation)theEObject;
- T result = caseToolInstallation(toolInstallation);
- if (result == null)
- result = defaultCase(theEObject);
- return result;
- }
case SetupPackage.PROJECT:
{
Project project = (Project)theEObject;
@@ -188,14 +204,6 @@ public class SetupSwitch<T>
result = defaultCase(theEObject);
return result;
}
- case SetupPackage.TOOL_PREFERENCE:
- {
- ToolPreference toolPreference = (ToolPreference)theEObject;
- T result = caseToolPreference(toolPreference);
- if (result == null)
- result = defaultCase(theEObject);
- return result;
- }
default:
return defaultCase(theEObject);
}
@@ -410,6 +418,22 @@ public class SetupSwitch<T>
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Link Location</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Link Location</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLinkLocation(LinkLocation object)
+ {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;

Back to the top