|
Copyright 2011-01-06 Werner Randelshofer | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectch.randelshofer.media.AbstractPlayer
public abstract class AbstractPlayer
Generic interface for media players.
| Field Summary | |
|---|---|
protected SequentialDispatcher |
dispatcher
The dispatcher. |
protected javax.swing.event.EventListenerList |
listenerList
Listener support. |
protected java.beans.PropertyChangeSupport |
propertyChangeSupport
Support for property change listeners. |
| Fields inherited from interface ch.randelshofer.media.Player |
|---|
CLOSED, PREFETCHED, PREFETCHING, REALIZED, REALIZING, STARTED, UNREALIZED |
| Constructor Summary | |
|---|---|
AbstractPlayer()
Creates a new instance. |
|
| Method Summary | |
|---|---|
void |
addChangeListener(javax.swing.event.ChangeListener listener)
Adds a listener that wants to be notified about state changes of the player. |
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds a listener who is interested in changes of this object. |
void |
addStateListener(StateListener l)
Adds a listener that wants to be notified about state changes of the player. |
void |
close()
Initiates the following asynchronous state transitions: any state -> closed |
void |
deallocate()
Initiates the following asynchronous state transitions: realizing -> unrealized prefetching -> realized prefetched -> realized realized started -> throws IllegalStateException closed -> throws IllegalStateException |
protected abstract void |
doClosed()
Does the work for the closed state. |
protected abstract void |
doPrefetched()
Does the work for the prefetched state. |
protected abstract void |
doPrefetching()
Does the work for the prefetching state. |
protected abstract void |
doRealized()
Does the work for the realized state. |
protected abstract void |
doRealizing()
Does the work for the realizing state. |
protected abstract void |
doStarted()
Does the work for the started state. |
protected abstract void |
doUnrealized()
Does the work for the unrealized state. |
protected void |
fireStateChanged(int newState)
Notifies all registered state listeners and all registered change listeners. |
int |
getState()
Gets the current state of the player. |
int |
getTargetState()
Gets the target state. |
boolean |
isActive()
Returns true when the target state of the player is equal to STARTED. |
void |
prefetch()
Initiates the following asynchronous state transitions: unrealized -> realizing -> realized -> prefetching -> prefetched realizing -> realized -> prefetching -> prefetched realized -> prefetching -> prefetched prefetching -> prefetched prefetched started -> throws IllegalStateException closed -> throws IllegalStateException |
void |
realize()
Initiates the following asynchronous state transitions: unrealized -> realizing -> realized realizing -> realized realized started -> throws IllegalStateException closed -> throws IllegalStateException |
void |
removeChangeListener(javax.swing.event.ChangeListener listener)
Removes a listener. |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes a previously registered listener. |
void |
removeStateListener(StateListener l)
Removes a listener. |
void |
run()
Most of the real work goes here. |
void |
setTargetState(int state)
Sets the desired target state. |
void |
start()
Initiates the following asynchronous state transitions: unrealized -> realizing -> realized -> prefetching -> prefetched -> started realizing -> realized -> prefetching -> prefetched -> started realized -> prefetching -> prefetched -> started prefetching -> prefetched -> started prefetched -> started started closed -> throws IllegalStateException |
void |
stop()
Initiates the following asynchronous state transitions: started -> prefetched unrealized realizing prefetching prefetched closed -> throws IllegalStateException |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface ch.randelshofer.media.Player |
|---|
getCachingModel, getControlPanelComponent, getTimeModel, getTotalDuration, getVisualComponent, isAudioAvailable, isAudioEnabled, isCached, setAudioEnabled |
| Field Detail |
|---|
protected javax.swing.event.EventListenerList listenerList
protected java.beans.PropertyChangeSupport propertyChangeSupport
protected SequentialDispatcher dispatcher
| Constructor Detail |
|---|
public AbstractPlayer()
| Method Detail |
|---|
public int getState()
getState in interface PlayergetState in interface StateModelpublic int getTargetState()
getTargetState in interface Playerpublic void setTargetState(int state)
setTargetState in interface Playerpublic void realize()
realize in interface Playerpublic void prefetch()
prefetch in interface Playerpublic void deallocate()
deallocate in interface Playerpublic void start()
start in interface Playerpublic void stop()
stop in interface Playerpublic void close()
close in interface Playerpublic void addStateListener(StateListener l)
addStateListener in interface PlayeraddStateListener in interface StateModelpublic void removeStateListener(StateListener l)
removeStateListener in interface PlayerremoveStateListener in interface StateModelpublic void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
addPropertyChangeListener in interface Playerpublic void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
removePropertyChangeListener in interface Playerprotected void fireStateChanged(int newState)
public void run()
run in interface java.lang.Runnableprotected abstract void doClosed()
protected abstract void doUnrealized()
protected abstract void doRealizing()
protected abstract void doRealized()
protected abstract void doPrefetching()
protected abstract void doPrefetched()
protected abstract void doStarted()
public void addChangeListener(javax.swing.event.ChangeListener listener)
addChangeListener in interface Playerpublic void removeChangeListener(javax.swing.event.ChangeListener listener)
removeChangeListener in interface Playerpublic boolean isActive()
isActive in interface Player
|
Copyright 2011-01-06 Werner Randelshofer | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||