Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVikas Chandra2015-07-15 09:09:54 +0000
committerVikas Chandra2015-07-15 09:09:54 +0000
commit0eb6884db706f994690659356a4e37961d92645c (patch)
treeedad3f1ebb5464f336b8837b1c7d5f6bdc962e01
parent585678758449fc2f8471be099e7798db3a58b784 (diff)
downloadeclipse.pde.ui-0eb6884db706f994690659356a4e37961d92645c.tar.gz
eclipse.pde.ui-0eb6884db706f994690659356a4e37961d92645c.tar.xz
eclipse.pde.ui-0eb6884db706f994690659356a4e37961d92645c.zip
Bug 470111 - Hang at startup involving target definition, XZed
repository and feature editor Signed-off-by: Vikas Chandra <Vikas.Chandra@in.ibm.com>
-rw-r--r--ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/FeatureModelManager.java27
-rw-r--r--ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDECoreMessages.java4
-rw-r--r--ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/pderesources.properties3
3 files changed, 30 insertions, 4 deletions
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/FeatureModelManager.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/FeatureModelManager.java
index 2323d83c89..0a4564568a 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/FeatureModelManager.java
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/FeatureModelManager.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation 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
@@ -12,9 +12,13 @@ package org.eclipse.pde.internal.core;
import java.util.*;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.WorkspaceJob;
+import org.eclipse.core.runtime.*;
import org.eclipse.pde.core.*;
+import org.eclipse.pde.core.target.ITargetDefinition;
import org.eclipse.pde.internal.core.FeatureTable.Idver;
import org.eclipse.pde.internal.core.ifeature.IFeatureModel;
+import org.eclipse.pde.internal.core.target.P2TargetUtils;
import org.eclipse.pde.internal.core.util.VersionUtil;
import org.osgi.framework.Version;
@@ -93,7 +97,26 @@ public class FeatureModelManager {
fExternalManager = new ExternalFeatureModelManager();
fExternalManager.addModelProviderListener(fProviderListener);
fReloadExternalNeeded = false;
- fExternalManager.initialize();
+
+ ITargetDefinition unresolvedRepoBasedtarget = null;
+ try {
+ unresolvedRepoBasedtarget = TargetPlatformHelper.getUnresolvedRepositoryBasedWorkspaceTarget();
+ } catch (CoreException e) {
+ PDECore.log(e);
+ }
+ if (unresolvedRepoBasedtarget != null && !P2TargetUtils.isProfileValid(unresolvedRepoBasedtarget)) {
+
+ WorkspaceJob initializeExternalManager = new WorkspaceJob(PDECoreMessages.FeatureModelManager_initializingFeatureTargetPlatform) {
+ @Override
+ public IStatus runInWorkspace(IProgressMonitor monitor) {
+ fExternalManager.initialize();
+ return Status.OK_STATUS;
+ }
+ };
+ initializeExternalManager.schedule();
+ } else
+ fExternalManager.initialize();
+
}
/*
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDECoreMessages.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDECoreMessages.java
index b17577d7e5..4416983205 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDECoreMessages.java
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDECoreMessages.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2013 IBM Corporation and others.
+ * Copyright (c) 2005, 2015 IBM Corporation 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
@@ -300,6 +300,8 @@ public class PDECoreMessages extends NLS {
public static String FeatureExportOperation_workspaceBuildErrorsFoundDuringExport;
+ public static String FeatureModelManager_initializingFeatureTargetPlatform;
+
public static String XMLErrorReporter_ExternalEntityResolution;
public static String ExtensionsErrorReporter_InvalidSchema;
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/pderesources.properties b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/pderesources.properties
index 68825423fb..f3b181a297 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/pderesources.properties
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/pderesources.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
+# Copyright (c) 2000, 2015 IBM Corporation 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
@@ -214,6 +214,7 @@ FeatureExportOperation_publishingMetadata=Publishing metadata
FeatureExportOperation_runningBuildScript=Running build script
FeatureExportOperation_runningPackagerScript=Running packager script
FeatureExportOperation_workspaceBuildErrorsFoundDuringExport=Export completed successfully, but build problems were detected in the following required projects: {0}
+FeatureModelManager_initializingFeatureTargetPlatform=Initializing feature from target platform
BaseExportTask_pdeExport=PDE Export
ClasspathHelper_BadFileLocation=Could not determine absolute location of file: {0}
ConvertSchemaToHTML_CannotFindIncludedSchema=Cannot find included schema ''{0}'' required by parent schema ''{1}''

Back to the top