com.neoworks.jukex.tracksource
Class OnetimeSearchPipelineElement

java.lang.Object
  |
  +--com.neoworks.jukex.tracksource.TrackSourcePipelineElementSkeleton
        |
        +--com.neoworks.jukex.tracksource.OnetimeSearchPipelineElement
All Implemented Interfaces:
java.io.Serializable, TrackSource, TrackSourcePipelineElement

public class OnetimeSearchPipelineElement
extends TrackSourcePipelineElementSkeleton

PipelineElement that plays the results of a query once.

Author:
Nigel Atkinson nigel@neoworks.com
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.neoworks.jukex.tracksource.TrackSourcePipelineElementSkeleton
name
 
Constructor Summary
OnetimeSearchPipelineElement()
          Public constructor
OnetimeSearchPipelineElement(Query q)
          Public constructor
 
Method Summary
 java.lang.Object clone()
          Clone this RandomiserPipelineElement
 java.lang.String getDescription()
          Return a String describing what, in general terms, this TrackSource does
 Track getNextTrack()
          Get the next Track
 java.lang.String getQueryString()
          Get a string representation of the query
 java.util.Map getState()
          Get the current state of this PipelineElement for persisting
 java.lang.String getSummary()
          Return a String summarising the configuration of the task the source is performing
 java.util.List peekTracks(int count)
          Peek up the track list
 void setQuery(Query q)
          Set the query to use for selecting tracks
 boolean setState(java.util.Map state)
          Load the configuration of this PipelineElement
 
Methods inherited from class com.neoworks.jukex.tracksource.TrackSourcePipelineElementSkeleton
delegateGetNextTrack, delegatePeekTracks, disable, enable, getName, getNextTrackSource, getOwner, isEnabled, removeTrack, setName, setNextTrackSource, setOwner, storeState
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OnetimeSearchPipelineElement

public OnetimeSearchPipelineElement()
Public constructor


OnetimeSearchPipelineElement

public OnetimeSearchPipelineElement(Query q)
Public constructor

Parameters:
q - The query to execute
Method Detail

setQuery

public void setQuery(Query q)
Set the query to use for selecting tracks

Parameters:
q - The Query

getState

public java.util.Map getState()
Get the current state of this PipelineElement for persisting

Specified by:
getState in interface TrackSourcePipelineElement
Specified by:
getState in class TrackSourcePipelineElementSkeleton
Returns:
a String keyed Map of objects representing the state of this PipelineElement, e.g. for a Playlist this would be information allowing the reconstruction of the current playlist queue.

setState

public boolean setState(java.util.Map state)
Load the configuration of this PipelineElement

Specified by:
setState in interface TrackSourcePipelineElement
Specified by:
setState in class TrackSourcePipelineElementSkeleton
Parameters:
state - a Map of values keyed by Strings representing the state of this PipelineElement.
Returns:
success

getNextTrack

public Track getNextTrack()
Get the next Track

Returns:
a Track object

peekTracks

public java.util.List peekTracks(int count)
Peek up the track list

Parameters:
count - The number of tracks to peek
Returns:
A List of Track objects

getQueryString

public java.lang.String getQueryString()
Get a string representation of the query

Returns:
Tne JukeXQL query String

clone

public java.lang.Object clone()
Clone this RandomiserPipelineElement

Specified by:
clone in interface TrackSource
Specified by:
clone in class TrackSourcePipelineElementSkeleton
Returns:
A clone of this RandomiserPipelineElement

getDescription

public java.lang.String getDescription()
Return a String describing what, in general terms, this TrackSource does

Returns:
A String

getSummary

public java.lang.String getSummary()
Return a String summarising the configuration of the task the source is performing

Returns:
A String