|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectanon.transport.connection.SkypeConnection.SkypeReader
private static class SkypeConnection.SkypeReader
Umsetzung eines IChunkReader welcher speziell auf die Eigenheiten
der Skype Verbindung zugeschnitten ist.
Da weder Skype noch Skype4Java einen gepufferten Empfang von Nachrichen
unterstuetzen, erzeugt die Implementierung intern eine Instanz eines
QueuedChunkReader um diesen asynchron von Skype fuellen zulassen.
| Field Summary | |
|---|---|
private Stream |
m_appStream
Das Skype Stream Object, welches den Kanal ueber Skype repraesentiert. |
private QueuedChunkReader |
m_baseReader
Der eigentliche Reader, welcher den gepufferten Empfang und die Auslieferung von Chunks umsetzt. |
private StreamListener |
m_listner
Der Listner fuer ankommende Nachrichten |
private ObjectQueue |
m_readBuffer
Der Empfangspuffer |
static int |
MAX_MESSAGE_LENGTH
Die maximal Laenge einer Nachricht, wie sie ueber Skype verschickt werden darf. |
| Constructor Summary | |
|---|---|
SkypeConnection.SkypeReader(Stream a_appStream)
Erstellt einen neuen reader auf Basis des uebergeben Skype Stream |
|
| Method Summary | |
|---|---|
int |
availableChunks()
Gibt aufschluss darueber, wieviele Chunks gelesen werden koennen, ohne das der Aufruf von IChunkReader.readChunk() blockiert. |
void |
close()
Entfernt den Listener und schliesst den internen Reader. |
byte[] |
readChunk()
Gibt den aeltesten (im Sinne des Einfuegens in den Kanal) der im Kanal befindlichen Chunks zurueck. |
void |
tearDown()
Entfernt den Listener und faehrt den internen Reader runter. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int MAX_MESSAGE_LENGTH
https://developer.skype.com/Docs/ApiDoc/Application_to_application_commands,
Constant Field Valuesprivate ObjectQueue m_readBuffer
private Stream m_appStream
private StreamListener m_listner
private QueuedChunkReader m_baseReader
| Constructor Detail |
|---|
public SkypeConnection.SkypeReader(Stream a_appStream)
a_appStream - Der Skype Strom, welcher als Datenkanal genutzt werden
soll.| Method Detail |
|---|
public int availableChunks()
throws ConnectionException
IChunkReaderIChunkReader.readChunk() blockiert.
Der Wert dieser Methode sollte nicht schrumpfen, sofern kein lesender Zugriff auf den Kanal erfolgt.
availableChunks in interface IChunkReaderConnectionException
public byte[] readChunk()
throws ConnectionException
IChunkReaderEvtl. Fehler oder unzulaessige Zustaende des Kanals koennen durch entsprechende Ausnahmen angezeigt werden.
readChunk in interface IChunkReadernull ist nicht zulaessig und ein Rueckgabewert von
byte[0] sollte vermieden werden.
ConnectionException
public void close()
throws java.io.IOException
close in interface IChunkReaderjava.io.IOException
public void tearDown()
throws java.io.IOException
java.io.IOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||