org.jacp.javafx2.rcp.coordinator
Class FX2MessageDelegator

java.lang.Object
  extended by java.lang.Thread
      extended by org.jacp.javafx2.rcp.coordinator.FX2MessageDelegator
All Implemented Interfaces:
java.lang.Runnable, org.jacp.api.coordinator.IDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>, org.jacp.api.coordinator.IMessageDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

public class FX2MessageDelegator
extends java.lang.Thread
implements org.jacp.api.coordinator.IMessageDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

The message delegator handles messages from one perspective to an other.

Author:
Andy Moncsek

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
FX2MessageDelegator()
           
 
Method Summary
 void addPerspective(org.jacp.api.perspective.IPerspective<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object> perspective)
           
 void delegateMessage(org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object> messageDTO)
           
 java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> getComponentDelegateQueue()
           
 java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> getMessageDelegateQueue()
           
<P extends org.jacp.api.component.IComponent<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>>
void
handleInActivePerspective(P component, org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object> action)
           
 void handleMessage(java.lang.String target, org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object> action)
           
 void removePerspective(org.jacp.api.perspective.IPerspective<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object> perspective)
           
 void run()
           
 void setComponentDelegateQueue(java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> componentDelegateQueue)
           
<P extends org.jacp.api.component.IComponent<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>>
void
setComponentHandler(org.jacp.api.handler.IComponentHandler<P,org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object>> handler)
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FX2MessageDelegator

public FX2MessageDelegator()
Method Detail

run

public final void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

handleMessage

public void handleMessage(java.lang.String target,
                          org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object> action)

handleInActivePerspective

public <P extends org.jacp.api.component.IComponent<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>> void handleInActivePerspective(P component,
                                                                                                                                                                       org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object> action)

getComponentDelegateQueue

public java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> getComponentDelegateQueue()

setComponentDelegateQueue

public void setComponentDelegateQueue(java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> componentDelegateQueue)

delegateMessage

public void delegateMessage(org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object> messageDTO)
Specified by:
delegateMessage in interface org.jacp.api.coordinator.IMessageDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

addPerspective

public void addPerspective(org.jacp.api.perspective.IPerspective<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object> perspective)
Specified by:
addPerspective in interface org.jacp.api.coordinator.IDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

removePerspective

public void removePerspective(org.jacp.api.perspective.IPerspective<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object> perspective)
Specified by:
removePerspective in interface org.jacp.api.coordinator.IDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

setComponentHandler

public <P extends org.jacp.api.component.IComponent<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>> void setComponentHandler(org.jacp.api.handler.IComponentHandler<P,org.jacp.api.action.IAction<javafx.event.Event,java.lang.Object>> handler)
Specified by:
setComponentHandler in interface org.jacp.api.coordinator.IDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>

getMessageDelegateQueue

public java.util.concurrent.BlockingQueue<org.jacp.api.action.IDelegateDTO<javafx.event.Event,java.lang.Object>> getMessageDelegateQueue()
Specified by:
getMessageDelegateQueue in interface org.jacp.api.coordinator.IMessageDelegator<javafx.event.EventHandler<javafx.event.Event>,javafx.event.Event,java.lang.Object>