sofya.apps.atomicity
Class EventClassifier

java.lang.Object
  extended by sofya.ed.semantic.EventFilter
      extended by sofya.ed.semantic.EventSelectionFilter
          extended by sofya.apps.atomicity.EventClassifier
All Implemented Interfaces:
EventListener
Direct Known Subclasses:
DefaultEventClassifier

public abstract class EventClassifier
extends EventSelectionFilter

Abstract base class for all classes which implement a global event classification policy for atomicity checking.

The classification determined for the event is published in a public field before events are demultiplexed by thread and forwarded to the automata which are checking the atomicity property for individual method invocations. The automata may choose to use the published classification if global information permits a better classification for the event than is possible based on local information available to the automata.

Version:
10/25/2005
Author:
Alex Kinneer

Nested Class Summary
static class EventClassifier.EventClass
          Type-safe enumeration of the possible classifications defined for events by the reduction-based algorithm.
 
Nested classes/interfaces inherited from interface sofya.ed.semantic.EventListener
EventListener.Arguments, EventListener.CallData, EventListener.ExceptionData, EventListener.FieldData, EventListener.MethodData, EventListener.MonitorData, EventListener.NewAllocationData, EventListener.ObjectData, EventListener.ThreadData, EventListener.ThreadStatus
 
Field Summary
 EventClassifier.EventClass eventClass
          Published classification determined by the global classifier for the most recent event.
 
Fields inherited from class sofya.ed.semantic.EventFilter
listenerCount, listeners
 
Constructor Summary
EventClassifier()
           
 
Method Summary
 
Methods inherited from class sofya.ed.semantic.EventSelectionFilter
callReturnEvent, classPrepareEvent, constructorCallEvent, constructorEnterEvent, constructorExitEvent, exceptionCatchEvent, exceptionThrowEvent, executionStarted, instanceFieldAccessEvent, instanceFieldWriteEvent, interfaceCallEvent, monitorAcquireEvent, monitorContendEvent, monitorPreReleaseEvent, monitorReleaseEvent, newAllocationEvent, staticCallEvent, staticFieldAccessEvent, staticFieldWriteEvent, staticInitializerEnterEvent, staticMethodEnterEvent, staticMethodExitEvent, systemExited, systemStarted, threadDeathEvent, threadStartEvent, virtualCallEvent, virtualMethodEnterEvent, virtualMethodExitEvent
 
Methods inherited from class sofya.ed.semantic.EventFilter
addEventListener, ensureCapacity, removeEventListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

eventClass

public EventClassifier.EventClass eventClass
Published classification determined by the global classifier for the most recent event.

Constructor Detail

EventClassifier

public EventClassifier()