\hypertarget{classi2bpro_1_1_play_list}{
\section{i2bpro.PlayList Klassenreferenz}
\label{classi2bpro_1_1_play_list}\index{i2bpro::PlayList@{i2bpro::PlayList}}
}


Zusammengehörigkeiten von i2bpro.PlayList:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=298pt]{classi2bpro_1_1_play_list__coll__graph}
\end{center}
\end{figure}
\subsection*{Öffentliche Methoden}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classi2bpro_1_1_play_list_a33060ec6a0bd4844707a1ba2475dfc95}{setPlayList} (String file)
\item 
HashMap$<$ Long, HashMap$<$ String, String $>$ $>$ \hyperlink{classi2bpro_1_1_play_list_a6180d3e3ceab96457c7c76e09ccbf000}{getPlayList} ()
\item 
Vector$<$ String $>$ \hyperlink{classi2bpro_1_1_play_list_a371b0c83e9781b6b086abb8614e33231}{getList} ()
\item 
Vector$<$ String $>$ \hyperlink{classi2bpro_1_1_play_list_ad0ebf8151e2623b2bbf3f62d7d358272}{changeSequence} (long old\_\-id, long new\_\-id)
\item 
Vector$<$ String $>$ \hyperlink{classi2bpro_1_1_play_list_a6285faefbf176d271d05396b5124f100}{deleteTrack} (long id)
\item 
Vector$<$ String $>$ \hyperlink{classi2bpro_1_1_play_list_a6b28cfd8360b93de0f5577cf52f609f0}{insertTrack} (String file)
\item 
Vector$<$ String $>$ \hyperlink{classi2bpro_1_1_play_list_a10e294064f3031d5915467607d4250e6}{insertTrack} (String file, long id)
\item 
String \hyperlink{classi2bpro_1_1_play_list_aa1d8e2bd00962587bab0e32a6ac4d68a}{getMeta} (long id, String key)
\item 
void \hyperlink{classi2bpro_1_1_play_list_abaff2babc65893f51bc077718c88618b}{setMeta} (long id, String key, String value)
\end{DoxyCompactItemize}
\subsection*{Öffentliche, statische Methoden}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classi2bpro_1_1_play_list_aac452a61d6c3b04f5b99faca48e7e302}{
static \hyperlink{classi2bpro_1_1_play_list}{PlayList} {\bfseries getInstance} ()}
\label{classi2bpro_1_1_play_list_aac452a61d6c3b04f5b99faca48e7e302}

\end{DoxyCompactItemize}


\subsection{Ausführliche Beschreibung}
Projektarbeit Informatik IIb -\/ Audioplayer \par
 Klasse: \hyperlink{classi2bpro_1_1_play_list}{PlayList}

Die Klasse \hyperlink{classi2bpro_1_1_play_list}{PlayList} dient als Schnittstelle zur Oberfläche (\hyperlink{classi2bpro_1_1_layer}{Layer}). Dazu stellt sie Methoden zur Verfügung, um Daten aus der Playlist auszulesen und zu bearbeiten bzw. zu löschen. Des weiteren kann die Reihenfolge der \hyperlink{classi2bpro_1_1_play_list}{PlayList} verändert werden.

\begin{DoxyVersion}{Version}
1.0.0 
\end{DoxyVersion}
\begin{DoxyDate}{Datum}
19.11.2010 
\end{DoxyDate}
\begin{DoxyAuthor}{Autor}
Jürgen Döffinger
\end{DoxyAuthor}
\begin{DoxyWarning}{Warnung}
Vor dem Aufruf der Methoden dieser Klasse muss mit der Methode setPlayList eine Playlist initialisiert werden.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000013}{Noch zu erledigen}]Es sind noch das Exception -\/ Handling zu schreiben.\end{Desc}


Definiert in Zeile 33 der Datei PlayList.java.



\subsection{Dokumentation der Elementfunktionen}
\hypertarget{classi2bpro_1_1_play_list_ad0ebf8151e2623b2bbf3f62d7d358272}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!changeSequence@{changeSequence}}
\index{changeSequence@{changeSequence}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{changeSequence}]{\setlength{\rightskip}{0pt plus 5cm}Vector$<$String$>$ i2bpro.PlayList.changeSequence (
\begin{DoxyParamCaption}
\item[{long}]{ old\_\-id, }
\item[{long}]{ new\_\-id}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_ad0ebf8151e2623b2bbf3f62d7d358272}
Die Methode changeSequence verschiebt einen Track innerhalb der \hyperlink{classi2bpro_1_1_play_list}{PlayList}.


\begin{DoxyParams}{Parameter}
{\em old\_\-id} & Derzeitige Position des Audiotracks innerhalb der \hyperlink{classi2bpro_1_1_play_list}{PlayList}. \\
\hline
{\em new\_\-id} & Position an die der Audiotrack innerhalb der PlaylList verschoben werden soll.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Rückgabe}
Gibt die Liste als Vector, wie in der Methode getList, zurück.
\end{DoxyReturn}
\begin{DoxyWarning}{Warnung}
Derzeit gibt die Methode die Liste wie Sie ursprünglich existierte zurück. Es findet keine Veränderung statt.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000017}{Noch zu erledigen}]Diese Methode ist noch nicht programmiert. Dies ist noch zu erledigen.\end{Desc}


Definiert in Zeile 189 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a6285faefbf176d271d05396b5124f100}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!deleteTrack@{deleteTrack}}
\index{deleteTrack@{deleteTrack}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{deleteTrack}]{\setlength{\rightskip}{0pt plus 5cm}Vector$<$String$>$ i2bpro.PlayList.deleteTrack (
\begin{DoxyParamCaption}
\item[{long}]{ id}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a6285faefbf176d271d05396b5124f100}
Die Methode deleteTrack entfernt einen Audiotrack aus der \hyperlink{classi2bpro_1_1_play_list}{PlayList} und gibt die so veränderte \hyperlink{classi2bpro_1_1_play_list}{PlayList} als Vector wieder zurück.


\begin{DoxyParams}{Parameter}
{\em id} & Identifikationsnummer des zu entfernenden Audiotracks.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Rückgabe}
Gibt die Liste als Vector, wie in der Methode getList, zurück.
\end{DoxyReturn}
\begin{DoxyWarning}{Warnung}
Derzeit gibt die Methode die Liste wie Sie ursprünglich existierte zurück. Es findet keine Veränderung statt.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000018}{Noch zu erledigen}]Diese Methode ist noch nicht programmiert. Dies ist noch zu erledigen.\end{Desc}


Definiert in Zeile 221 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a371b0c83e9781b6b086abb8614e33231}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!getList@{getList}}
\index{getList@{getList}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{getList}]{\setlength{\rightskip}{0pt plus 5cm}Vector$<$String$>$ i2bpro.PlayList.getList (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a371b0c83e9781b6b086abb8614e33231}
Die Methode getList erstellt einen Vector der einen String aus Kombinationvon Tietel und Artist enthält. Sollte einer der beiden nicht als Metadaten vorliegen, wird entsprechend no Artist oder no Titel ausgegeben. Sollten beide Angaben nicht zur Verfügung stehen, wird der Speicherort der Audiodaten in den String des Vectors geschrieben.\par
\par
 Der Vector kann von der Oberfläche als Darstellung der \hyperlink{classi2bpro_1_1_play_list}{PlayList} verwendet werden.

\begin{DoxyReturn}{Rückgabe}
Vector mit String der eine Kombination aus Titel und Artist enthält.
\end{DoxyReturn}
\begin{Desc}
\item[\hyperlink{todo__todo000016}{Noch zu erledigen}]Exception -\/ Handling für nicht initialisierte \hyperlink{classi2bpro_1_1_play_list}{PlayList} ist noch zu schreiben. \end{Desc}


Definiert in Zeile 120 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_aa1d8e2bd00962587bab0e32a6ac4d68a}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!getMeta@{getMeta}}
\index{getMeta@{getMeta}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{getMeta}]{\setlength{\rightskip}{0pt plus 5cm}String i2bpro.PlayList.getMeta (
\begin{DoxyParamCaption}
\item[{long}]{ id, }
\item[{String}]{ key}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_aa1d8e2bd00962587bab0e32a6ac4d68a}
Die Methode getMedia gibt Metadaten zurück. Mithilfe der Paramter id und key wird bestimmt, welches Metadatum zurückgegeben werden soll.


\begin{DoxyParams}{Parameter}
{\em id} & Identifikationsnummer des Audiotracks. \\
\hline
{\em key} & Schlüsselwort für das jeweilige Metadatum. Folgende Schlüsselwörter sind möglich:\par
\par
 media = Speicherort des Audiotracks\par
 album = Albumtitel des Audiotracks\par
 album-\/artist = Künstlername der das Album bestimmt\par
 amazon-\/id = Identifikationsnummer für Amazon\par
 artist = Name des Interpreten\par
 bpm = Angabe der Geschwindigkeit des Audiotracks in Beat per Minutes\par
 comment = Kommentare\par
 genre\_\-id = Identifikationsnummer des Genres nach ID3.org (\href{http://id3.org/id3v2.4.0-frames}{\tt http://id3.org/id3v2.4.0-\/frames})\par
 genre = Bezeichnung des Genre\par
 titel = Titel des Audiotracks\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Rückgabe}
Das Metadatum als String. Ist die Information nicht verfügbar, wird ein NullString zzurückgegeben.
\end{DoxyReturn}
\begin{Desc}
\item[\hyperlink{todo__todo000021}{Noch zu erledigen}]Exception Handling ist noch zu schreiben, für den Fall einer nicht initialisierten \hyperlink{classi2bpro_1_1_play_list}{PlayList}.\end{Desc}


Definiert in Zeile 312 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a6180d3e3ceab96457c7c76e09ccbf000}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!getPlayList@{getPlayList}}
\index{getPlayList@{getPlayList}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{getPlayList}]{\setlength{\rightskip}{0pt plus 5cm}HashMap$<$Long, HashMap$<$String, String$>$ $>$ i2bpro.PlayList.getPlayList (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a6180d3e3ceab96457c7c76e09ccbf000}
Die Methode getPlayList gibt die komplette \hyperlink{classi2bpro_1_1_play_list}{PlayList} zurück.

\begin{DoxyReturn}{Rückgabe}
Der Rückgabewert enthält die vollständige \hyperlink{classi2bpro_1_1_play_list}{PlayList} als HashMap.
\end{DoxyReturn}
\begin{Desc}
\item[\hyperlink{todo__todo000015}{Noch zu erledigen}]Exception Handling ist noch zu schreiben, für den Fall einer nicht initialisierten \hyperlink{classi2bpro_1_1_play_list}{PlayList}.\end{Desc}


Definiert in Zeile 100 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a10e294064f3031d5915467607d4250e6}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!insertTrack@{insertTrack}}
\index{insertTrack@{insertTrack}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{insertTrack}]{\setlength{\rightskip}{0pt plus 5cm}Vector$<$String$>$ i2bpro.PlayList.insertTrack (
\begin{DoxyParamCaption}
\item[{String}]{ file, }
\item[{long}]{ id}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a10e294064f3031d5915467607d4250e6}
Dies ist eine weitere Methode insertTrack, welche ebenfalls einen Audiotrack der \hyperlink{classi2bpro_1_1_play_list}{PlayList} hinzufügt, allerdings wird hier der Audiotrack nicht an das Ende der Liste angehängt, sondern mittels des Parameters id, kann die Position bestimmt werden, an der der Audiotrack eingefügt werden soll.


\begin{DoxyParams}{Parameter}
{\em file} & Speicherort des Audiotracks.\\
\hline
{\em id} & Position an die der Audiotrack eingefügt werden soll.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Rückgabe}
Gibt die Liste als Vector, wie in der Methode getList, zurück.
\end{DoxyReturn}
\begin{DoxyWarning}{Warnung}
Derzeit gibt die Methode die Liste wie Sie ursprünglich existierte zurück. Es findet keine Veränderung statt.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000020}{Noch zu erledigen}]Diese Methode ist noch nicht programmiert. Dies ist noch zu erledigen.\end{Desc}


Definiert in Zeile 276 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a6b28cfd8360b93de0f5577cf52f609f0}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!insertTrack@{insertTrack}}
\index{insertTrack@{insertTrack}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{insertTrack}]{\setlength{\rightskip}{0pt plus 5cm}Vector$<$String$>$ i2bpro.PlayList.insertTrack (
\begin{DoxyParamCaption}
\item[{String}]{ file}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a6b28cfd8360b93de0f5577cf52f609f0}
Mit der MEthode insertTrack kann ein Audiotrack der \hyperlink{classi2bpro_1_1_play_list}{PlayList} hinzugefügt werden. Dabei wird er an das Ende der Liste angehängt.


\begin{DoxyParams}{Parameter}
{\em file} & Speicherort des Audiotracks.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Rückgabe}
Gibt die Liste als Vector, wie in der Methode getList, zurück.
\end{DoxyReturn}
\begin{DoxyWarning}{Warnung}
Derzeit gibt die Methode die Liste wie Sie ursprünglich existierte zurück. Es findet keine Veränderung statt.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000019}{Noch zu erledigen}]Diese Methode ist noch nicht programmiert. Dies ist noch zu erledigen.\end{Desc}


Definiert in Zeile 246 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_abaff2babc65893f51bc077718c88618b}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!setMeta@{setMeta}}
\index{setMeta@{setMeta}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{setMeta}]{\setlength{\rightskip}{0pt plus 5cm}void i2bpro.PlayList.setMeta (
\begin{DoxyParamCaption}
\item[{long}]{ id, }
\item[{String}]{ key, }
\item[{String}]{ value}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_abaff2babc65893f51bc077718c88618b}
Mithilfe der Methode setMeta können Metadaten, eines Audiotrack, verändert oder hinzugrfügt werden.


\begin{DoxyParams}{Parameter}
{\em id} & Identifikationsnummer des Audiotracks. \\
\hline
{\em key} & Schlüsselwort für das jeweilige Metadatum. Folgende Schlüsselwörter sind möglich:\par
\par
 media = Speicherort des Audiotracks\par
 album = Albumtitel des Audiotracks\par
 album-\/artist = Künstlername der das Album bestimmt\par
 amazon-\/id = Identifikationsnummer für Amazon\par
 artist = Name des Interpreten\par
 bpm = Angabe der Geschwindigkeit des Audiotracks in Beat per Minutes\par
 comment = Kommentare\par
 genre\_\-id = Identifikationsnummer des Genres nach ID3.org (\href{http://id3.org/id3v2.4.0-frames}{\tt http://id3.org/id3v2.4.0-\/frames})\par
 genre = Bezeichnung des Genre\par
 titel = Titel des Audiotracks \\
\hline
{\em value} & Enthält die Metadatumsangabe als String.\\
\hline
\end{DoxyParams}
\begin{DoxyWarning}{Warnung}
Derzeit ist die Methode ohne Funktion und es finden keine Veränderungen an den Metadaten statt.
\end{DoxyWarning}
\begin{Desc}
\item[\hyperlink{todo__todo000022}{Noch zu erledigen}]Diese Methode ist noch nicht programmiert. Dies ist noch zu erledigen.\end{Desc}


Definiert in Zeile 345 der Datei PlayList.java.

\hypertarget{classi2bpro_1_1_play_list_a33060ec6a0bd4844707a1ba2475dfc95}{
\index{i2bpro::PlayList@{i2bpro::PlayList}!setPlayList@{setPlayList}}
\index{setPlayList@{setPlayList}!i2bpro::PlayList@{i2bpro::PlayList}}
\subsubsection[{setPlayList}]{\setlength{\rightskip}{0pt plus 5cm}void i2bpro.PlayList.setPlayList (
\begin{DoxyParamCaption}
\item[{String}]{ file}
\end{DoxyParamCaption}
)}}
\label{classi2bpro_1_1_play_list_a33060ec6a0bd4844707a1ba2475dfc95}
Die Methode setPlayList initialisiert die mit dem Parameter file übergebene Playlist. Dabei ist file ein String mit dem Speicherort der \hyperlink{classi2bpro_1_1_play_list}{PlayList}. Die Methode muss feststellen, um welchen Type von playlist es sichhandelt und mit der entsprechenden Instanz weiterarbeiten.


\begin{DoxyParams}{Parameter}
{\em file} & Enthält den Speicherort der Playlist als String.\\
\hline
\end{DoxyParams}
\begin{Desc}
\item[\hyperlink{todo__todo000014}{Noch zu erledigen}]Es muss noch der Quellcode geschrieben werden, was passieren soll, wenn die Playlist als url vorliegt.\end{Desc}


Definiert in Zeile 67 der Datei PlayList.java.



Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:\begin{DoxyCompactItemize}
\item 
C:/Projekte/I2BPro/src/i2bpro/PlayList.java\end{DoxyCompactItemize}
