Java Debug Interface

com.sun.jdi.request
インタフェース ExceptionRequest

すべてのスーパーインタフェース:
EventRequest, Mirror

public interface ExceptionRequest
extends EventRequest

ターゲット VM で例外が発生する際に通知を要求します。有効な ExceptionRequest の条件が満たされると、ExceptionEvent を含むイベントセットEventQueue に追加されます。既存の ExceptionRequest のコレクションは EventRequestManager により管理されます。

導入されたバージョン:
1.3
関連項目:
ExceptionEvent, EventQueue, EventRequestManager

フィールドの概要
 
インタフェース com.sun.jdi.request.EventRequest から継承されたフィールド
SUSPEND_ALL, SUSPEND_EVENT_THREAD, SUSPEND_NONE
 
メソッドの概要
 void addClassExclusionFilter(String classPattern)
          この要求によって生成されるイベントを、この限定された正規表現に一致「しない」名前を持つクラス内のイベントに制限します。
 void addClassFilter(ReferenceType refType)
          この要求によって生成されるイベントを、指定された参照型またはその任意のサブタイプ内のイベントに制限します。
 void addClassFilter(String classPattern)
          この要求によって生成されるイベントを、この限定された正規表現に一致する名前を持つクラス内に位置するイベントに制限します。
 void addInstanceFilter(ObjectReference instance)
          この要求により生成されるイベントを、現在実行中のインスタンス (このインスタンス) が、指定されたオブジェクトであるイベントだけに制限します。
 void addThreadFilter(ThreadReference thread)
          この要求によって生成されるイベントを、このスレッド内にあるものだけに制限します。
 ReferenceType exception()
          例外イベントが要求される元となった例外型を返します。
 boolean notifyCaught()
          要求された型のキャッチされた例外が、スロー時にイベントを生成するかどうかを返します。
 boolean notifyUncaught()
          要求された型のキャッチされない例外が、スロー時にイベントを生成するかどうかを返します。
 
インタフェース com.sun.jdi.request.EventRequest から継承されたメソッド
addCountFilter, disable, enable, getProperty, isEnabled, putProperty, setEnabled, setSuspendPolicy, suspendPolicy
 
インタフェース com.sun.jdi.Mirror から継承されたメソッド
toString, virtualMachine
 

メソッドの詳細

exception

ReferenceType exception()
例外イベントが要求される元となった例外型を返します。

戻り値:
EventRequestManager.createExceptionRequest(com.sun.jdi.ReferenceType, boolean, boolean) で要求された例外 (およびそのサブクラス)。すべての例外が要求された場合 (デフォルト) は null。

notifyCaught

boolean notifyCaught()
要求された型のキャッチされた例外が、スロー時にイベントを生成するかどうかを返します。

例外がスローされる時点では、その例外が本当にキャッチされるかどうかを常に判定できるわけではないことに留意してください。詳細は、ExceptionEvent.catchLocation() を参照してください。

戻り値:
キャッチされた例外がレポートされる場合は boolean 型の true、それ以外の場合は false。

notifyUncaught

boolean notifyUncaught()
要求された型のキャッチされない例外が、スロー時にイベントを生成するかどうかを返します。

例外がスローされる時点では、その例外が本当にキャッチされないかどうかを常に判定できるわけではないことに留意してください。詳細は、ExceptionEvent.catchLocation() を参照してください。

戻り値:
キャッチされた例外がレポートされる場合は boolean 型の true、それ以外の場合は false。

addThreadFilter

void addThreadFilter(ThreadReference thread)
この要求によって生成されるイベントを、このスレッド内にあるものだけに制限します。

パラメータ:
thread - フィルタ処理するスレッド。
例外:
InvalidRequestStateException - この要求が現在有効になっている場合、または削除されている場合。 フィルタは無効な要求にだけ追加できる。

addClassFilter

void addClassFilter(ReferenceType refType)
この要求によって生成されるイベントを、指定された参照型またはその任意のサブタイプ内のイベントに制限します。イベントは、指定された参照型に安全にキャストできる参照型の中であれば、任意の位置で生成される。

パラメータ:
refType - フィルタ処理する参照型。
例外:
InvalidRequestStateException - この要求が現在有効になっている場合、または削除されている場合。 フィルタは無効な要求にだけ追加できる。

addClassFilter

void addClassFilter(String classPattern)
この要求によって生成されるイベントを、この限定された正規表現に一致する名前を持つクラス内に位置するイベントに制限します。正規表現は、完全一致および「*」で始まるか「*」で終了するパターン (例、「*.Foo」や「java.*」) に制限されます。

パラメータ:
classPattern - フィルタを規定するパターン文字列。
例外:
InvalidRequestStateException - この要求が現在有効になっている場合、または削除されている場合。 フィルタは無効な要求にだけ追加できる。

addClassExclusionFilter

void addClassExclusionFilter(String classPattern)
この要求によって生成されるイベントを、この限定された正規表現に一致「しない」名前を持つクラス内のイベントに制限します。正規表現は、完全一致および「*」で始まるか「*」で終了するパターン (例、「*.Foo」や「java.*」) に制限されます。

パラメータ:
classPattern - フィルタを規定するパターン文字。
例外:
InvalidRequestStateException - この要求が現在有効になっている場合、または削除されている場合。 フィルタは無効な要求にだけ追加できる。

addInstanceFilter

void addInstanceFilter(ObjectReference instance)
この要求により生成されるイベントを、現在実行中のインスタンス (このインスタンス) が、指定されたオブジェクトであるイベントだけに制限します。

この操作は、ターゲットでサポートされていないことがあります。この操作がサポートされているかどうかを確認するには、VirtualMachine.canUseInstanceFilters() を使用します。

パラメータ:
instance - このフィルタを通過するために、現在のインスタンスである必要があるオブジェクト。
例外:
UnsupportedOperationException - ターゲット Virtual Machine がこの操作をサポートしていない場合。
InvalidRequestStateException - この要求が現在有効になっている場合、または削除されている場合。 フィルタは無効な要求にだけ追加できる。
導入されたバージョン:
1.4

Java Debug Interface