FileDocCategorySizeDatePackage
SystemException.javaAPI DocJava SE 5 API3184Fri Aug 26 14:58:32 BST 2005org.omg.CORBA

SystemException

public abstract class SystemException extends RuntimeException
The root class for all CORBA standard exceptions. These exceptions may be thrown as a result of any CORBA operation invocation and may also be returned by many standard CORBA API methods. The standard exceptions contain a minor code, allowing more detailed specification, and a completion status. This class is subclassed to generate each one of the set of standard ORB exceptions. SystemException extends java.lang.RuntimeException; thus none of the SystemException exceptions need to be declared in signatures of the Java methods mapped from operations in IDL interfaces.
see
documentation on Java IDL exceptions

Fields Summary
public int
minor
The CORBA Exception minor code.
public CompletionStatus
completed
The status of the operation that threw this exception.
Constructors Summary
protected SystemException(String reason, int minor, CompletionStatus completed)
Constructs a SystemException exception with the specified detail message, minor code, and completion status. A detail message is a String that describes this particular exception.

param
reason the String containing a detail message
param
minor the minor code
param
completed the completion status

	super(reason);
	this.minor = minor;
	this.completed = completed;
    
Methods Summary
public java.lang.StringtoString()
Converts this exception to a representative string.

        // The fully qualified exception class name
	String result = super.toString();

        // The vmcid part
        int vmcid = minor & 0xFFFFF000;
        switch (vmcid) {
            case OMGVMCID.value:
                result += "  vmcid: OMG";
                break;
            case SUNVMCID.value:
                result += "  vmcid: SUN";
                break;
            default:
                result += "  vmcid: 0x" + Integer.toHexString(vmcid);
                break;
        }

        // The minor code part
        int mc = minor & 0x00000FFF;
        result += "  minor code: " + mc;

        // The completion status part
	switch (completed.value()) {
            case CompletionStatus._COMPLETED_YES:
                result += "  completed: Yes";
                break;
            case CompletionStatus._COMPLETED_NO:
                result += "  completed: No";
                break;
            case CompletionStatus._COMPLETED_MAYBE:
            default:
                result += " completed: Maybe";
                break;
	}
        return result;