Lizzy v1.1.1

christophedelory.playlist.pls
Class PLSProvider

java.lang.Object
  extended by christophedelory.playlist.pls.PLSProvider
All Implemented Interfaces:
SpecificPlaylistProvider

public class PLSProvider
extends Object
implements SpecificPlaylistProvider

A text playlist similar to .ini (program settings) files. It normally contains only the location of the items in the playlist.
The syntax of a PLS file is the same syntax as a Windows .ini file and was probably chosen because of support in the Windows API. Metadata is included in the entry for each song, in a set of parallel arrays where FileN=[address of file]; TitleN=[title of song].

Version:
$Revision: 91 $
Author:
Christophe Delory

Constructor Summary
PLSProvider()
           
 
Method Summary
 ContentType[] getContentTypes()
          Returns a list of one or more content types representing the playlists compatible with this provider.
 String getId()
          Returns a unique string identifying the type of specific playlists handled by this provider.
 SpecificPlaylist readFrom(InputStream in, String encoding, Log logger)
          Reads a playlist from the specified input stream.
 SpecificPlaylist toSpecificPlaylist(Playlist playlist)
          Builds a specific representation of the given generic playlist.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PLSProvider

public PLSProvider()
Method Detail

getId

public String getId()
Description copied from interface: SpecificPlaylistProvider
Returns a unique string identifying the type of specific playlists handled by this provider.

Specified by:
getId in interface SpecificPlaylistProvider
Returns:
a playlist identifier. Shall not be null.

getContentTypes

public ContentType[] getContentTypes()
Description copied from interface: SpecificPlaylistProvider
Returns a list of one or more content types representing the playlists compatible with this provider. The list should be ordered from the most used / recommended to the least one.

Specified by:
getContentTypes in interface SpecificPlaylistProvider
Returns:
a list of content types. Shall not be null nor empty.

readFrom

public SpecificPlaylist readFrom(InputStream in,
                                 String encoding,
                                 Log logger)
                          throws Exception
Description copied from interface: SpecificPlaylistProvider
Reads a playlist from the specified input stream. When done, the stream remains open.

Specified by:
readFrom in interface SpecificPlaylistProvider
Parameters:
in - an input stream. Shall not be null.
encoding - the content encoding of the input resource, or null if not known.
logger - the logger that may be used during the unmarshalling process, if needed. Shall not be null.
Returns:
a new playlist instance, or null if the format has been recognized, but the playlist is malformed.
Throws:
NullPointerException - if in is null.
Exception - if any error occurs during the unmarshalling process.
See Also:
SpecificPlaylist.writeTo(java.io.OutputStream, java.lang.String), SpecificPlaylistFactory.readFrom(java.net.URL)

toSpecificPlaylist

public SpecificPlaylist toSpecificPlaylist(Playlist playlist)
                                    throws Exception
Description copied from interface: SpecificPlaylistProvider
Builds a specific representation of the given generic playlist.

Specified by:
toSpecificPlaylist in interface SpecificPlaylistProvider
Parameters:
playlist - a generic playlist. Shall not be null.
Returns:
a specific service playlist. Shall not be null.
Throws:
NullPointerException - if playlist is null.
Exception - if this service provider is unable to represent the input playlist.
See Also:
SpecificPlaylist.toPlaylist()

© 2008-2009 Christophe Delory

Copyright © 2008-2009 Christophe Delory. All Rights Reserved.