You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-commits@incubator.apache.org by xa...@apache.org on 2007/10/27 07:18:51 UTC

svn commit: r589056 - /incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java

Author: xavier
Date: Sat Oct 27 00:18:50 2007
New Revision: 589056

URL: http://svn.apache.org/viewvc?rev=589056&view=rev
Log:
better error handling + attempt to solve IVYDE-61

Modified:
    incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java

Modified: incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java
URL: http://svn.apache.org/viewvc/incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java?rev=589056&r1=589055&r2=589056&view=diff
==============================================================================
--- incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java (original)
+++ incubator/ivy/ivyde/trunk/src/java/org/apache/ivyde/eclipse/cpcontainer/IvyClasspathContainer.java Sat Oct 27 00:18:50 2007
@@ -220,10 +220,14 @@
         						}
         					}
         				} catch (FileNotFoundException e) {
-        					status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, "ivy file not found: "+_ivyXmlFile+"\nPlease configure your IvyDE ClasspathContainer properly", e);
+        					String errorMsg = "ivy file not found: "+_ivyXmlFile+"\nPlease configure your IvyDE ClasspathContainer properly";
+            				Message.error(errorMsg);
+							status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, errorMsg, e);
         					return;
         				} catch (ParseException e) {
-        					status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, "parse exception in: "+_ivyXmlFile+"\n"+e.getMessage(), e);
+        					String errorMsg = "parse exception in: "+_ivyXmlFile+"\n"+e.getMessage();
+            				Message.error(errorMsg);
+							status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, errorMsg, e);
         					return;
         				} finally {
         					Thread.currentThread().setContextClassLoader(old);
@@ -244,7 +248,9 @@
         					}
         				}
         			} catch (Exception e) {
-        				status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, "An internal error occured while resolving dependencies of "+_ivyXmlFile+"\nPlease see eclipse error log and IvyConsole for details", e);
+        				String errorMsg = "An internal error occured while resolving dependencies of "+_ivyXmlFile+"\nPlease see eclipse error log and IvyConsole for details";
+        				Message.error(errorMsg);
+						status[0] = new Status(Status.ERROR, IvyPlugin.ID, Status.ERROR, errorMsg, e);
         				return;
         			} finally {
         				_monitor.done();
@@ -528,8 +534,7 @@
 	        	return _job;
         	}
         } catch (Exception e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
+            Message.error(e.getMessage());
             return null;
         }        
     }
@@ -552,8 +557,9 @@
 
 
     private void updateClasspathEntries(final boolean usePreviousResolveIfExist, boolean notify, final ClasspathItem[] classpathItems) {
+    	IClasspathEntry[] entries;
     	if(classpathItems != null) {
-	        IClasspathEntry[] entries = new IClasspathEntry[ classpathItems.length ];
+	        entries = new IClasspathEntry[ classpathItems.length ];
 	        
 	        for( int i=0; i<classpathItems.length; i++ ) {
 	            Path path = classpathItems[ i ].getClasspathArtifactPath();
@@ -564,13 +570,10 @@
 	                                                    getExtraAttribute(classpathItems[ i ]),
 	                                                    false);
 	        }
-	        setClasspathEntries(entries);
     	} else {
-            setClasspathEntries(new IClasspathEntry[0]);
-    	}
-    	if (notify) {
-    		notifyUpdateClasspathEntries();
+            entries = new IClasspathEntry[0];
     	}
+    	setClasspathEntries(entries, notify);
     }
 
     private IPath getSourceAttachment(ClasspathItem classpathItem) {
@@ -612,32 +615,30 @@
 
 
 
-    private void setClasspathEntries(final IClasspathEntry[] entries) {
-        Display.getDefault().syncExec(new Runnable() {
+    private void setClasspathEntries(final IClasspathEntry[] entries, final boolean notify) {
+        Display.getDefault().asyncExec(new Runnable() {
             public void run() {
                 _classpathEntries = entries;
+                if (notify) {
+                	notifyUpdateClasspathEntries();
+                }
             }
         });
     }
 
-    private void notifyUpdateClasspathEntries() {
-        Display.getDefault().asyncExec(new Runnable() {
-            public void run() {
-                try {
-                    JavaModelManager manager = JavaModelManager.getJavaModelManager();
-                    manager.containerPut(_javaProject, _path, null);
-                    JavaCore.setClasspathContainer(
-                            _path,
-                            new IJavaProject[] {_javaProject},
-                            new IClasspathContainer[] {IvyClasspathContainer.this},
-                            null);
-                } catch (JavaModelException e) {
-                    // TODO Auto-generated catch block
-                    e.printStackTrace();
-                }                    
-            }
-        });
-    }
+	private void notifyUpdateClasspathEntries() {
+		try {
+		    JavaModelManager manager = JavaModelManager.getJavaModelManager();
+		    manager.containerPut(_javaProject, _path, null);
+		    JavaCore.setClasspathContainer(
+		            _path,
+		            new IJavaProject[] {_javaProject},
+		            new IClasspathContainer[] {IvyClasspathContainer.this},
+		            null);
+		} catch (JavaModelException e) {
+		    Message.error(e.getMessage());
+		}
+	}
 
     public static String[] getConfigurations(IPath containerPath) {
         return containerPath.lastSegment().split(",");
@@ -680,7 +681,7 @@
                 }
             }
         } catch (JavaModelException e) {
-            e.printStackTrace();
+            Message.error(e.getMessage());
         }
     }
 
@@ -702,7 +703,7 @@
                 }
             }
         } catch (JavaModelException e) {
-            e.printStackTrace();
+            Message.error(e.getMessage());
         }
     }