Exemplo n.º 1
0
  /**
   * Requests monitoring of an event.
   *
   * <p>The debugger registers for event notification through an event filter. If no event filter is
   * specified for an event in the VM, it is assumed that the debugger is not interested in
   * receiving notifications of this event.
   *
   * <p>The virtual machine will be notified of the request.
   *
   * @param request the request to monitor
   * @throws InvalidEventTypeException for invalid event kind
   * @throws JdwpException for other errors involving request
   */
  public void requestEvent(EventRequest request) throws JdwpException {
    // Add request to request list
    Hashtable requests;
    Byte kind = new Byte(request.getEventKind());
    requests = (Hashtable) _requests.get(kind);
    if (requests == null) {
      // Did not get a valid event type
      throw new InvalidEventTypeException(request.getEventKind());
    }

    // Register the event with the VM
    VMVirtualMachine.registerEvent(request);
    requests.put(new Integer(request.getId()), request);
  }