[jbosstools-commits] JBoss Tools SVN: r23318 - trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Thu Jul 8 10:24:16 EDT 2010


Author: scabanovich
Date: 2010-07-08 10:24:16 -0400 (Thu, 08 Jul 2010)
New Revision: 23318

Modified:
   trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewCDIAnnotationWizardPage.java
   trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewInterceptorBindingWizardPage.java
   trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewStereotypeWizardPage.java
Log:
https://jira.jboss.org/browse/JBIDE-6548

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewCDIAnnotationWizardPage.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewCDIAnnotationWizardPage.java	2010-07-08 14:18:57 UTC (rev 23317)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewCDIAnnotationWizardPage.java	2010-07-08 14:24:16 UTC (rev 23318)
@@ -10,18 +10,21 @@
  ******************************************************************************/
 package org.jboss.tools.cdi.ui.wizard;
 
+import java.lang.reflect.InvocationTargetException;
 import java.util.List;
 
+import org.eclipse.core.resources.IProject;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.jdt.core.IBuffer;
+import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.ISourceRange;
 import org.eclipse.jdt.core.IType;
 import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility;
 import org.eclipse.jdt.internal.ui.IJavaHelpContextIds;
 import org.eclipse.jdt.ui.wizards.NewAnnotationWizardPage;
-import org.eclipse.jdt.ui.wizards.NewTypeWizardPage.ImportsManager;
 import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.operation.IRunnableWithProgress;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
@@ -30,7 +33,10 @@
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.ui.PlatformUI;
 import org.jboss.tools.cdi.core.CDIConstants;
-import org.jboss.tools.cdi.core.ICDIAnnotation;
+import org.jboss.tools.cdi.core.CDICoreMessages;
+import org.jboss.tools.cdi.core.CDICoreNature;
+import org.jboss.tools.cdi.core.CDICorePlugin;
+import org.jboss.tools.cdi.core.ICDIProject;
 import org.jboss.tools.cdi.ui.CDIUIMessages;
 import org.jboss.tools.common.ui.widget.editor.CheckBoxFieldEditor;
 import org.jboss.tools.common.ui.widget.editor.CompositeEditor;
@@ -188,4 +194,34 @@
 		}
 	}
 
+	protected ICDIProject getCDIProject(IJavaProject jp) {
+		CDICoreNature n = getCDINatureWithProgress(jp.getProject());
+		return n == null ? null : n.getDelegate();
+	}
+
+	public static CDICoreNature getCDINatureWithProgress(final IProject project){
+		final CDICoreNature cdiNature = CDICorePlugin.getCDI(project, false);
+		if(cdiNature != null && !cdiNature.isStorageResolved()){
+			try{
+				PlatformUI.getWorkbench().getProgressService().run(false, false, new IRunnableWithProgress(){
+					public void run(IProgressMonitor monitor)
+							throws InvocationTargetException, InterruptedException {
+						monitor.beginTask(CDICoreMessages.CDI_UTIL_BUILD_CDI_MODEL, 10);
+						monitor.worked(3);
+						cdiNature.resolve();
+						monitor.worked(7);
+					}
+					
+				});
+			}catch(InterruptedException ie){
+				CDICorePlugin.getDefault().logError(ie);
+			}catch(InvocationTargetException ite){
+				CDICorePlugin.getDefault().logError(ite);
+			}
+		}
+		
+		return cdiNature;
+	}
+
+
 }

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewInterceptorBindingWizardPage.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewInterceptorBindingWizardPage.java	2010-07-08 14:18:57 UTC (rev 23317)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewInterceptorBindingWizardPage.java	2010-07-08 14:24:16 UTC (rev 23318)
@@ -95,7 +95,7 @@
 		interceptorBindingsProvider.setProject(null);
 		if(root != null) {
 			IJavaProject jp = root.getJavaProject();
-			ICDIProject cdi = CDICorePlugin.getCDIProject(jp.getProject(), true);
+			ICDIProject cdi = getCDIProject(jp);
 			if(cdi != null) {
 				interceptorBindingsProvider.setProject(cdi);
 			}

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewStereotypeWizardPage.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewStereotypeWizardPage.java	2010-07-08 14:18:57 UTC (rev 23317)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/NewStereotypeWizardPage.java	2010-07-08 14:24:16 UTC (rev 23318)
@@ -186,7 +186,7 @@
 	void setScopes(IPackageFragmentRoot root) {
 		if(root != null) {
 			IJavaProject jp = root.getJavaProject();
-			ICDIProject cdi = CDICorePlugin.getCDIProject(jp.getProject(), true);
+			ICDIProject cdi = getCDIProject(jp);
 			if(cdi != null) {
 				Set<String> scopes = cdi.getScopeNames();
 				String[] tags = scopes.toArray(new String[0]);
@@ -203,7 +203,7 @@
 		interceptorBindingsProvider.setProject(null);
 		if(root != null) {
 			IJavaProject jp = root.getJavaProject();
-			ICDIProject cdi = CDICorePlugin.getCDIProject(jp.getProject(), true);
+			ICDIProject cdi = getCDIProject(jp);
 			if(cdi != null) {
 				interceptorBindingsProvider.setProject(cdi);
 			}



More information about the jbosstools-commits mailing list