Module jdk.jdi
Package com.sun.jdi.request

# Interface BreakpointRequest

All Superinterfaces:
  `EventRequest`, `Locatable`, `Mirror`

public interface BreakpointRequest extends EventRequest, Locatable
Identifies a `Location` in the target VM at which execution should be stopped. When an enabled BreakpointRequest is satisfied, an `event set` containing an `BreakpointEvent` will be placed on the `EventQueue` and the application is interrupted. The collection of existing breakpoints is managed by the `EventRequestManager`

Since:
  1.3
See Also:
  - `Location`
  - `BreakpointEvent`
  - `EventQueue`
  - `EventRequestManager`

## Field Summary

### Fields declared in interface com.sun.jdi.request.EventRequest

`SUSPEND_ALL, SUSPEND_EVENT_THREAD, SUSPEND_NONE`

## Method Summary

Modifier and Type
Method
Description
`void`
`addInstanceFilter(ObjectReference instance)`
Restricts the events generated by this request to those in which the currently executing instance is the object specified.
`void`
`addThreadFilter(ThreadReference thread)`
Restricts the events generated by this request to those in the given thread.
`Location`
`location()`
Returns the location of the requested breakpoint.

### Methods declared in interface com.sun.jdi.request.EventRequest

`addCountFilter, disable, enable, getProperty, isEnabled, putProperty, setEnabled, setSuspendPolicy, suspendPolicy`

### Methods declared in interface com.sun.jdi.Mirror

`toString, virtualMachine`

## Method Details

### location

Location location()
Returns the location of the requested breakpoint.

Specified by:
  `location` in interface `Locatable`
Returns:
  the `Location` where this breakpoint has been set.

### addThreadFilter

void addThreadFilter(ThreadReference thread)
Restricts the events generated by this request to those in the given thread.

Parameters:
  `thread` - the thread to filter on.
Throws:
  `InvalidRequestStateException` - if this request is currently enabled or has been deleted. Filters may be added only to disabled requests.

### addInstanceFilter

void addInstanceFilter(ObjectReference instance)
Restricts the events generated by this request to those in which the currently executing instance is the object specified.

Not all targets support this operation. Use `VirtualMachine.canUseInstanceFilters()` to determine if the operation is supported.

Parameters:
  `instance` - the object which must be the current instance in order to pass this filter.
Throws:
  `UnsupportedOperationException` - if the target virtual machine does not support this operation.
  `InvalidRequestStateException` - if this request is currently enabled or has been deleted. Filters may be added only to disabled requests.
Since:
  1.4