Bug 432634 - [Product][Editors] Add support for p2 repo
Remove API changes from IConfigAdvice

Change-Id: I4ae827621752f41f0e983ba5cbeb4622bad1073a
diff --git a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigAdvice.java b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigAdvice.java
index d01e30f..446d70d 100644
--- a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigAdvice.java
+++ b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigAdvice.java
@@ -10,12 +10,11 @@
  ******************************************************************************/
 package org.eclipse.equinox.p2.publisher.eclipse;
 
-import java.util.*;
+import java.util.Map;
 import org.eclipse.equinox.frameworkadmin.BundleInfo;
 import org.eclipse.equinox.internal.p2.core.helpers.CollectionUtils;
 import org.eclipse.equinox.internal.provisional.frameworkadmin.ConfigData;
 import org.eclipse.equinox.p2.publisher.AbstractAdvice;
-import org.eclipse.equinox.p2.repository.IRepositoryReference;
 
 public class ConfigAdvice extends AbstractAdvice implements IConfigAdvice {
 
@@ -40,9 +39,4 @@
 		return CollectionUtils.toMap(data.getProperties());
 	}
 
-	public List<IRepositoryReference> getUpdateRepositories() {
-		// The config data does not carry repository info so we return an empty list
-		return new ArrayList<IRepositoryReference>();
-	}
-
 }
diff --git a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigCUsAction.java b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigCUsAction.java
index 6a8bcc5..c1ca730 100644
--- a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigCUsAction.java
+++ b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ConfigCUsAction.java
@@ -259,14 +259,16 @@
 					unconfigurationData += TouchpointInstruction.encodeAction("setProgramProperty", parameters); //$NON-NLS-1$
 				}
 			}
-			for (IRepositoryReference repo : advice.getUpdateRepositories()) {
-				Map<String, String> parameters = new LinkedHashMap<String, String>();
-				parameters.put("type", Integer.toString(repo.getType())); //$NON-NLS-1$
-				parameters.put("location", repo.getLocation().toString()); //$NON-NLS-1$
-				parameters.put("enabled", Boolean.toString((repo.getOptions() & IRepository.ENABLED) == IRepository.ENABLED)); //$NON-NLS-1$
-				configurationData += TouchpointInstruction.encodeAction("addRepository", parameters); //$NON-NLS-1$
-				parameters.remove("enabled"); //$NON-NLS-1$
-				unconfigurationData += TouchpointInstruction.encodeAction("removeRepository", parameters);//$NON-NLS-1$
+			if (advice instanceof ProductFileAdvice) {
+				for (IRepositoryReference repo : ((ProductFileAdvice) advice).getUpdateRepositories()) {
+					Map<String, String> parameters = new LinkedHashMap<String, String>();
+					parameters.put("type", Integer.toString(repo.getType())); //$NON-NLS-1$
+					parameters.put("location", repo.getLocation().toString()); //$NON-NLS-1$
+					parameters.put("enabled", Boolean.toString((repo.getOptions() & IRepository.ENABLED) == IRepository.ENABLED)); //$NON-NLS-1$
+					configurationData += TouchpointInstruction.encodeAction("addRepository", parameters); //$NON-NLS-1$
+					parameters.remove("enabled"); //$NON-NLS-1$
+					unconfigurationData += TouchpointInstruction.encodeAction("removeRepository", parameters);//$NON-NLS-1$
+				}
 			}
 		}
 		return new String[] {configurationData, unconfigurationData};
diff --git a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/IConfigAdvice.java b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/IConfigAdvice.java
index 6c5ef15..7e65ab6 100644
--- a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/IConfigAdvice.java
+++ b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/IConfigAdvice.java
@@ -10,11 +10,9 @@
  ******************************************************************************/
 package org.eclipse.equinox.p2.publisher.eclipse;
 
-import java.util.List;
 import java.util.Map;
 import org.eclipse.equinox.frameworkadmin.BundleInfo;
 import org.eclipse.equinox.p2.publisher.IPublisherAdvice;
-import org.eclipse.equinox.p2.repository.IRepositoryReference;
 
 public interface IConfigAdvice extends IPublisherAdvice {
 
@@ -22,5 +20,4 @@
 
 	public Map<String, String> getProperties();
 
-	public List<IRepositoryReference> getUpdateRepositories();
 }