Interface IJavaInterfaceType

    • Method Detail

      • getImplementors

        IJavaClassType[] getImplementors()
                                  throws DebugException
        Returns the class objects associated with the implementors of this interface type. Returns an empty array if there are none.
        Returns:
        the class objects associated with the implementors of this interface type
        Throws:
        DebugException - if this method fails. Reasons include:
        • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
        Since:
        3.0
      • getSubInterfaces

        IJavaInterfaceType[] getSubInterfaces()
                                       throws DebugException
        Returns the interface objects associated with the sub-interfaces of this interface type. Returns an empty array if there are none. The sub-interfaces are those interfaces that directly extend this interface, that is, those interfaces that declared this interface in their extends clause.
        Returns:
        the interface objects associated with the sub-interfaces of this interface type
        Throws:
        DebugException - if this method fails. Reasons include:
        • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
        Since:
        3.0
      • getSuperInterfaces

        IJavaInterfaceType[] getSuperInterfaces()
                                         throws DebugException
        Returns the interface objects associated with the super-interfaces of this interface type. Returns an empty array if there are none. The super-interfaces are those interfaces that are directly extended by this interface, that is, those interfaces that this interface declared to be extended.
        Returns:
        the interface objects associated with the super-interfaces of this interface type
        Throws:
        DebugException - if this method fails. Reasons include:
        • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
        Since:
        3.0
      • sendMessage

        IJavaValue sendMessage​(String selector,
                               String signature,
                               IJavaValue[] args,
                               IJavaThread thread)
                        throws DebugException
        Returns the result of sending the specified message to this class with the given arguments in the specified thread (invokes a static method on this type). The given thread is resumed to perform this method invocation and suspends in its original location when this method invocation is complete. This method does not return until the method invocation is complete. Resuming the specified thread can result in breakpoints being hit, infinite loops, and deadlock.
        Parameters:
        selector - the selector of the method to be invoked
        signature - the JNI style signature of the method to be invoked
        args - the arguments of the method, which can be null or empty if there are none
        thread - the thread in which to invoke the method
        Returns:
        the result of invoking the method
        Throws:
        DebugException - if this method fails. Reasons include:
        • Failure communicating with the VM. The DebugException's status code contains the underlying exception responsible for the failure.
        • This object does not implement the specified method
        • An exception occurs while invoking the specified method
        • The given thread is already performing a message send, (status code IJavaThread.ERR_NESTED_METHOD_INVOCATION)
        • The given thread is not currently suspended (status code IJavaThread.ERR_THREAD_NOT_SUSPENDED)
        • The given thread was explicitly suspended (status code IJavaThread.ERR_INCOMPATIBLE_THREAD_STATE)
        Since:
        3.10