org.squirrelframework.foundation.component
Interface Observable

All Known Subinterfaces:
ActionExecutionService<T,S,E,C>, StateMachine<T,S,E,C>, UntypedStateMachine
All Known Implementing Classes:
AbstractExecutionService, AbstractStateMachine, AbstractSubject, AbstractUntypedStateMachine, ActionExecutionServiceImpl

public interface Observable

This interface represents an observable object, or "data" in the subject-observer paradigm. It can be implemented to represent an object that the observer wants to have listened.

Author:
Henry.He

Method Summary
 void addListener(Class<?> eventType, Object listener, Method method)
          Add listener to observable subject.
 void addListener(Class<?> eventType, Object listener, String methodName)
          Add listener to observable subject.
 void fireEvent(SquirrelEvent event)
          Fire event to notify all observers
 int getListenerSize()
           
 boolean isNotifiable()
           
 void removeAllListeners()
          Remove all listeners
 void removeListener(Class<?> eventType, Object listener)
          Add listener to observable subject.
 void removeListener(Class<?> eventType, Object listener, Method method)
          Remove listener from observable subject.
 void removeListener(Class<?> eventType, Object listener, String methodName)
          Remove listener to observable subject.
 void removeListener(com.google.common.base.Predicate<ListenerMethod> predicate)
           
 void setNotifiable(boolean notifiable)
          Set notifiable of subject
 

Method Detail

isNotifiable

boolean isNotifiable()
Returns:
whether the subject is notifiable

setNotifiable

void setNotifiable(boolean notifiable)
Set notifiable of subject

Parameters:
notifiable -

addListener

void addListener(Class<?> eventType,
                 Object listener,
                 Method method)
Add listener to observable subject.

Parameters:
eventType - type of event
listener - listener object
method - listener method

addListener

void addListener(Class<?> eventType,
                 Object listener,
                 String methodName)
Add listener to observable subject.

Parameters:
eventType - type of event
listener - listener object
methodName - name of listener method

removeListener

void removeListener(com.google.common.base.Predicate<ListenerMethod> predicate)

removeListener

void removeListener(Class<?> eventType,
                    Object listener,
                    Method method)
Remove listener from observable subject.

Parameters:
eventType - type of event
listener - listener object
method - listener method

removeListener

void removeListener(Class<?> eventType,
                    Object listener,
                    String methodName)
Remove listener to observable subject.

Parameters:
eventType - type of event
listener - listener object
methodName - name of listener method

removeListener

void removeListener(Class<?> eventType,
                    Object listener)
Add listener to observable subject.

Parameters:
eventType - type of event
listener - listener object

removeAllListeners

void removeAllListeners()
Remove all listeners


fireEvent

void fireEvent(SquirrelEvent event)
Fire event to notify all observers

Parameters:
event - based event

getListenerSize

int getListenerSize()


Copyright © 2013-2014. All Rights Reserved.