1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 22:52:11 +02:00

Changed the error handling and the error messages.

This commit is contained in:
Mikhail Khodjaiants 2002-10-01 17:35:49 +00:00
parent 8dad35d75f
commit c8235eee79
5 changed files with 35 additions and 20 deletions

View file

@ -11,6 +11,8 @@ import org.eclipse.cdt.debug.core.CDebugModel;
import org.eclipse.cdt.debug.core.cdi.CDIException; import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.ICDISession; import org.eclipse.cdt.debug.core.cdi.ICDISession;
import org.eclipse.cdt.debug.core.cdi.model.ICDITarget; import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
import org.eclipse.cdt.debug.internal.core.CDebugUtils;
import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.PlatformObject; import org.eclipse.core.runtime.PlatformObject;
import org.eclipse.core.runtime.Status; import org.eclipse.core.runtime.Status;
@ -262,4 +264,14 @@ public class CDebugElement extends PlatformObject
message, message,
exception ) ); exception ) );
} }
protected void infoMessage( Throwable e )
{
IStatus newStatus = new Status( IStatus.INFO,
CDebugCorePlugin.getUniqueIdentifier(),
ICDebugInternalConstants.STATUS_CODE_INFO,
e.getMessage(),
null );
CDebugUtils.info( newStatus, getDebugTarget() );
}
} }

View file

@ -572,7 +572,7 @@ public class CStackFrame extends CDebugElement
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( MessageFormat.format( "{0} occurred retrieving local variables", new String[] { e.toString() } ), e ); targetRequestFailed( e.toString(), null );
} }
return list; return list;
} }
@ -591,7 +591,7 @@ public class CStackFrame extends CDebugElement
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( MessageFormat.format( "{0} occurred retrieving arguments", new String[] { e.toString() } ), e ); targetRequestFailed( e.toString(), null );
} }
return list; return list;
} }

View file

@ -246,11 +246,9 @@ public class CThread extends CDebugElement
} }
catch( CDIException e ) catch( CDIException e )
{ {
requestFailed( MessageFormat.format( "{0} occurred retrieving stack frames.", new String[] { e.toString() } ), e ); targetRequestFailed( e.getMessage(), null );
// execution will not reach this line, as
// #targetRequestFailed will thrown an exception
return null;
} }
return new ICDIStackFrame[0];
} }
/** /**

View file

@ -12,10 +12,15 @@ import java.util.Collections;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.ICValue; import org.eclipse.cdt.debug.core.ICValue;
import org.eclipse.cdt.debug.core.cdi.CDIException; import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.model.ICDIValue; import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable; import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
import org.eclipse.cdt.debug.internal.core.CDebugUtils;
import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.debug.core.DebugException; import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.model.IValue; import org.eclipse.debug.core.model.IValue;
import org.eclipse.debug.core.model.IVariable; import org.eclipse.debug.core.model.IVariable;
@ -79,7 +84,7 @@ public class CValue extends CDebugElement implements ICValue
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( "Operation failed. Reason: ", e ); logError( e );
} }
return typeName; return typeName;
} }
@ -97,8 +102,8 @@ public class CValue extends CDebugElement implements ICValue
} }
catch( CDIException e ) catch( CDIException e )
{ {
// change this logError( e );
requestFailed( "", e ); fValueString = e.getMessage();
} }
} }
return fValueString; return fValueString;
@ -160,7 +165,7 @@ public class CValue extends CDebugElement implements ICValue
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( "Operation failed. Reason: ", e ); targetRequestFailed( e.getMessage(), null );
} }
return false; return false;
} }
@ -175,25 +180,27 @@ public class CValue extends CDebugElement implements ICValue
protected List getCDIVariables() throws DebugException protected List getCDIVariables() throws DebugException
{ {
ICDIVariable[] vars = null;
try try
{ {
ICDIValue value = getUnderlyingValue(); ICDIValue value = getUnderlyingValue();
if ( value != null ) if ( value != null )
{ {
ICDIVariable[] vars = value.getVariables(); vars = value.getVariables();
//Should throw an exception // Quick fix.
// getVariables should return an empty array instead of null.
if ( vars == null ) if ( vars == null )
{ {
vars = new ICDIVariable[0]; vars = new ICDIVariable[0];
} }
return Arrays.asList( vars );
} }
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( "Operation failed. Reason: ", e ); vars = new ICDIVariable[0];
infoMessage( e );
} }
return Collections.EMPTY_LIST; return Arrays.asList( vars );
} }
protected void calculateType( String stringValue ) protected void calculateType( String stringValue )
@ -241,7 +248,7 @@ public class CValue extends CDebugElement implements ICValue
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( "Operation failed. Reason: ", e ); targetRequestFailed( e.getMessage(), null );
} }
return result; return result;
} }

View file

@ -163,11 +163,9 @@ public abstract class CVariable extends CDebugElement
} }
catch( CDIException e ) catch( CDIException e )
{ {
targetRequestFailed( MessageFormat.format( "{0} occurred retrieving value.", new String[] { e.toString() } ), e ); targetRequestFailed( e.toString(), null );
// execution will not reach this line, as
// #targetRequestFailed will throw an exception
return null;
} }
return null;
} }
/** /**