frysk.proc.dead
Class TestLinuxCore.CodeObserver

java.lang.Object
  extended by frysk.proc.dead.TestLinuxCore.CodeObserver
All Implemented Interfaces:
Observer, TaskObserver, TaskObserver.Code
Enclosing class:
TestLinuxCore

static class TestLinuxCore.CodeObserver
extends Object
implements TaskObserver.Code


Nested Class Summary
 
Nested classes/interfaces inherited from interface frysk.proc.TaskObserver
TaskObserver.Cloned, TaskObserver.Code, TaskObserver.Execed, TaskObserver.Forked, TaskObserver.Instruction, TaskObserver.Signaled, TaskObserver.Syscalls, TaskObserver.Terminated, TaskObserver.Terminating, TaskObserver.Watch
 
Field Summary
private  long address
           
(package private)  boolean hit
           
private  Task task
           
 
Constructor Summary
TestLinuxCore.CodeObserver(Task task, long address)
           
 
Method Summary
 void addedTo(Object o)
          Acknowledge the request to add this Observer from Object's set of observers was successful.
 void addFailed(Object o, Throwable w)
          Notify that the attempt to add to the specified observer failed.
 void deletedFrom(Object o)
          Acknowledge the request to delete this Observer from Object's set of observers was successful (or that the Observer was spontaneously deleted, e.g., due to a task exit).
 Action updateHit(Task task, long address)
          The task has hit the breakpoint.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

task

private final Task task

address

private final long address

hit

boolean hit
Constructor Detail

TestLinuxCore.CodeObserver

public TestLinuxCore.CodeObserver(Task task,
                                  long address)
Method Detail

updateHit

public Action updateHit(Task task,
                        long address)
Description copied from interface: TaskObserver.Code
The task has hit the breakpoint. Return Action.BLOCK to block the task's further execution. Note that all Tasks of a Proc share their breakpoints, so this method needs to check the actual Task that got hit.

Specified by:
updateHit in interface TaskObserver.Code

addedTo

public void addedTo(Object o)
Description copied from interface: Observer
Acknowledge the request to add this Observer from Object's set of observers was successful.

Specified by:
addedTo in interface Observer

deletedFrom

public void deletedFrom(Object o)
Description copied from interface: Observer
Acknowledge the request to delete this Observer from Object's set of observers was successful (or that the Observer was spontaneously deleted, e.g., due to a task exit).

Specified by:
deletedFrom in interface Observer

addFailed

public void addFailed(Object o,
                      Throwable w)
Description copied from interface: Observer
Notify that the attempt to add to the specified observer failed.

Specified by:
addFailed in interface Observer