Index: gnu/classpath/jdwp/exception/JdwpException.java --- /dev/null +++ gnu/classpath/jdwp/exception/JdwpException.java @@ -0,0 +1,86 @@ +/* JdwpException.java -- an exception base class for all JDWP exceptions + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +/** + * A base class exception for all JDWP back-end exceptions + * + * @author Keith Seitz (address@hidden) + */ +public class JdwpException + extends Exception +{ + // The integer error code defined by JDWP + private short _errorCode; + + /** + * Constructs a new JdwpException with the + * given error code and given cause + * + * @param code the JDWP error code + * @param t the cause of the exception + */ + public JdwpException (short code, Throwable t) + { + super (t); + _errorCode = code; + } + + /** + * Constructs a new JdwpException with the + * given error code and string error message + * + * @param code the JDWP error code + * @param str an error message + */ + public JdwpException (short code, String str) + { + super (str); + _errorCode = code; + } + + /** + * Returns the JDWP error code represented by this exception + */ + public short getErrorCode () + { + return _errorCode; + } +} Index: gnu/classpath/jdwp/exception/InvalidClassException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidClassException.java @@ -0,0 +1,63 @@ +/* InvalidClassException.java -- invalid/unknown class reference id exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown by the JDWP back-end when an invalid reference + * type id is used by the debugger. + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidClassException + extends JdwpException +{ + public InvalidClassException (long id) + { + super (JdwpConstants.Error.INVALID_CLASS, + "invalid class id (" + id + ")"); + } + + public InvalidClassException (Throwable t) + { + super (JdwpConstants.Error.INVALID_CLASS, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidCountException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidCountException.java @@ -0,0 +1,61 @@ +/* InvalidCountException -- an invalid count exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when a count filter is given an invalid count. + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidCountException + extends JdwpException +{ + public InvalidCountException (int id) + { + super (JdwpConstants.Error.INVALID_COUNT, "invalid count (" + id + ")"); + } + + public InvalidCountException (Throwable t) + { + super (JdwpConstants.Error.INVALID_COUNT, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidEventTypeException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidEventTypeException.java @@ -0,0 +1,63 @@ +/* InvalidEventTypeException.java -- an invalid event kind exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when the debugger asks for an event request + * for a non-existant event + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidEventTypeException + extends JdwpException +{ + public InvalidEventTypeException (byte kind) + { + super (JdwpConstants.Error.INVALID_EVENT_TYPE, + "invalid event type (" + kind + ")"); + } + + public InvalidEventTypeException (Throwable t) + { + super (JdwpConstants.Error.INVALID_EVENT_TYPE, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidObjectException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidObjectException.java @@ -0,0 +1,63 @@ +/* InvalidObjectException.java -- an invalid object id exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when an invalid object id is used by + * the debugger + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidObjectException + extends JdwpException +{ + public InvalidObjectException (long id) + { + super (JdwpConstants.Error.INVALID_OBJECT, + "invalid object id (" + id + ")"); + } + + public InvalidObjectException (Throwable t) + { + super (JdwpConstants.Error.INVALID_OBJECT, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidStringException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidStringException.java @@ -0,0 +1,62 @@ +/* InvalidStringException.java -- an invalid string exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when the debugger uses an invalid String. + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidStringException + extends JdwpException +{ + public InvalidStringException (String str) + { + super (JdwpConstants.Error.INVALID_STRING, + "invalid string (" + str + ")"); + } + + public InvalidStringException (Throwable t) + { + super (JdwpConstants.Error.INVALID_STRING, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidThreadException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidThreadException.java @@ -0,0 +1,63 @@ +/* InvalidThreadException.java -- an invalid thread exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when an invalid thread is used + * by the debugger + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidThreadException + extends JdwpException +{ + public InvalidThreadException (long id) + { + super (JdwpConstants.Error.INVALID_THREAD, + "invalid thread id (" + id + ")"); + } + + public InvalidThreadException (Throwable t) + { + super (JdwpConstants.Error.INVALID_THREAD, t); + } +} Index: gnu/classpath/jdwp/exception/InvalidThreadGroupException.java --- /dev/null +++ gnu/classpath/jdwp/exception/InvalidThreadGroupException.java @@ -0,0 +1,63 @@ +/* InvalidThreadGroupException.java -- an invalid thread group exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when an invalid thread group is used + * by the debugger + * + * @author Keith Seitz (address@hidden) + */ +public class InvalidThreadGroupException + extends JdwpException +{ + public InvalidThreadException (long id) + { + super (JdwpConstants.Error.INVALID_THREAD_GROUP, + "invalid thread id (" + id + ")"); + } + + public InvalidThreadException (Throwable t) + { + super (JdwpConstants.Error.INVALID_THREAD, t); + } +} Index: gnu/classpath/jdwp/exception/JdwpInternalErrorException.java --- /dev/null +++ gnu/classpath/jdwp/exception/JdwpInternalErrorException.java @@ -0,0 +1,57 @@ +/* JdwpInternalErrorException.java -- an internal error exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown by the JDWP back-end when an unusual runtime + * error occurs internally + * + * @author Keith Seitz (address@hidden) + */ +public class JdwpInternalErrorException + extends JdwpException +{ + public JdwpInternalErrorException (Throwable cause) + { + super (JdwpConstants.Error.INTERNAL, cause); + } +} Index: gnu/classpath/jdwp/exception/NotImplementedException.java --- /dev/null +++ gnu/classpath/jdwp/exception/NotImplementedException.java @@ -0,0 +1,58 @@ +/* NotImplementedException.java -- an exception for unimplemented JDWP + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown by virtual machines when functionality + * or features are not implemented + * + * @author Keith Seitz (address@hidden) + */ +public class NotImplementedException + extends JdwpException +{ + public NotImplementedException (String feature) + { + super (JdwpConstants.Error.NOT_IMPLEMENTED, + feature + " is not yet implemented"); + } +} Index: gnu/classpath/jdwp/exception/VmDeadException.java --- /dev/null +++ gnu/classpath/jdwp/exception/VmDeadException.java @@ -0,0 +1,55 @@ +/* VmDeadException.java -- dead virtual machine exception + Copyright (C) 2005 Free Software Foundation + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + +package gnu.classpath.jdwp.exception; + +import gnu.classpath.jdwp.JdwpConstants; + +/** + * An exception thrown when the virtual machine is dead + * + * @author Keith Seitz (address@hidden) + */ +public class VmDeadException + extends JdwpException +{ + public VmDeadException () + { + super (JdwpConstants.Error.VM_DEAD, "Virtual machine is dead"); + } +}