Refactoring/API-cleanup:
- split MethodData/FieldData into public interface and internal class
- move InternalCompilerError into the compiler source folder
- remove class ExceptionHandler and let individual plugins more directly use their own loggers.
This makes source folder jdt.core/util obsolete.
diff --git a/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/OTDebugUIPlugin.java b/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/OTDebugUIPlugin.java
index 83fad25..578bc3e 100644
--- a/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/OTDebugUIPlugin.java
+++ b/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/OTDebugUIPlugin.java
@@ -26,12 +26,13 @@
 import org.eclipse.core.resources.IResourceChangeEvent;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.IAdapterManager;
+import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.debug.internal.ui.ColorManager;
 import org.eclipse.jdt.debug.core.JDIDebugModel;
 import org.eclipse.jface.preference.PreferenceConverter;
 import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.objectteams.otdt.core.exceptions.ExceptionHandler;
 import org.eclipse.objectteams.otdt.debug.OTDebugElementsContainer;
 import org.eclipse.objectteams.otdt.debug.TeamInstance;
 import org.eclipse.objectteams.otdt.debug.ui.internal.CopyInheritanceBreakpointManager;
@@ -143,11 +144,11 @@
 		return ColorManager.getDefault().getColor(PreferenceConverter.getColor(getDefault().getPreferenceStore(), type));
 	}
 
-	
-	public static ExceptionHandler getExceptionHandler()
-	{
-		return new ExceptionHandler(PLUGIN_ID);
+
+	public static void logException(String message, Throwable exception) {
+		plugin.getLog().log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.OK, message, exception));
 	}
+
     
     protected void initializeImageRegistry(ImageRegistry reg)
     {
diff --git a/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/internal/CopyInheritanceBreakpointManager.java b/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/internal/CopyInheritanceBreakpointManager.java
index 36a35c7..e604428 100644
--- a/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/internal/CopyInheritanceBreakpointManager.java
+++ b/plugins/org.eclipse.objectteams.otdt.debug.ui/src/org/eclipse/objectteams/otdt/debug/ui/internal/CopyInheritanceBreakpointManager.java
@@ -119,7 +119,7 @@
         }
         catch (CoreException ex)
         {
-            OTDebugUIPlugin.getExceptionHandler().logCoreException("Problem with breakpoint handling", ex); //$NON-NLS-1$
+            OTDebugUIPlugin.logException("Problem with breakpoint handling", ex); //$NON-NLS-1$
         }
         
         return IJavaBreakpointListener.DONT_CARE;
@@ -251,7 +251,7 @@
 			try {
 				newBreakpoint.getMarker().setAttribute(IBreakpoint.ENABLED, Boolean.FALSE);
 			} catch (CoreException ex) {
-				OTDebugUIPlugin.getExceptionHandler().logCoreException("Unable to disable breakpoint", ex); //$NON-NLS-1$
+				OTDebugUIPlugin.logException("Unable to disable breakpoint", ex); //$NON-NLS-1$
 			}
         target.getDebugTarget().breakpointAdded(newBreakpoint);
         
@@ -316,7 +316,7 @@
 				else
 					copy.delete();
 			} catch (CoreException ex) {
-				OTDebugUIPlugin.getExceptionHandler().logCoreException("Unable to query copied breakpoint", ex); //$NON-NLS-1$
+				OTDebugUIPlugin.logException("Unable to query copied breakpoint", ex); //$NON-NLS-1$
 			}
         }
 		// cleanup if no more copies are active:
@@ -373,13 +373,13 @@
             catch (InvocationTargetException ex)
             {
                 if (ex.getCause() instanceof CoreException)
-                    OTDebugUIPlugin.getExceptionHandler().logCoreException("Error creating type hiearchy", (CoreException) ex.getCause()); //$NON-NLS-1$
+                    OTDebugUIPlugin.logException("Error creating type hiearchy", (CoreException) ex.getCause()); //$NON-NLS-1$
                 else
-                    OTDebugUIPlugin.getExceptionHandler().logException("Error creating type hiearchy", ex); //$NON-NLS-1$
+                    OTDebugUIPlugin.logException("Error creating type hiearchy", ex); //$NON-NLS-1$
             }
             catch (InterruptedException ex)
             {
-                OTDebugUIPlugin.getExceptionHandler().logException("Error creating type hiearchy", ex); //$NON-NLS-1$
+                OTDebugUIPlugin.logException("Error creating type hiearchy", ex); //$NON-NLS-1$
             }
             
             return _subClasses;