|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.bsvrz.sys.funclib.communicationStreams.StreamMultiplexer.MultiplexerStreaminformations
private static class StreamMultiplexer.MultiplexerStreaminformations
Diese Objekt beinhaltet alle Informationen, die für einen Stream, auf Senderseiteseite, wichtig sind. Diese Objekte werden in einem Array (Index des Arrays ist dabei gleich der Nummer des Stream) gespeichert. Somit können alle Inforamtionen zu einem Stream mit einem Arrayzugriff geholt werden.
StreamMultiplexer._streams
Field Summary | |
---|---|
private int |
_currentStreamPacketIndex
Der aktuelle Index bis zu dem Pakete verschickt wurden |
private StreamMultiplexerDirector |
_director
|
private int |
_maxStreamPacketIndex
Bis zu welchem Paketindex darf der Sender Pakete versenden |
private boolean |
_streamTerminated
Wenn ein Stream abgebrochen wurde (mit abort des Empfängers oder take liefert null oder killAllStreams
), dann wird dieser boolean true. |
Constructor Summary | |
---|---|
StreamMultiplexer.MultiplexerStreaminformations(int deblockingFactor,
StreamMultiplexerDirector director)
Beim erzeugen des Objekts wird sofort festgelegt, wie viele Nutzdatenpakete vom Sender beim ersten Senden verschickt werden (deblockingFactor viele). |
Method Summary | |
---|---|
int |
getCurrentStreamPacketIndex()
|
int |
getMaxStreamPacketIndex()
|
boolean |
isStreamTerminated()
Wenn der Stream keine Nutzdaten mehr verschicken darf, dann wird true zurück gegeben. |
void |
setCurrentStreamPacketIndex(int currentStreamPacketIndex)
|
void |
setMaxStreamPacketIndex(int maxStreamPacketIndex)
|
void |
setStreamFinished()
Der Stream darf keine Daten mehr senden. |
void |
setStreamTerminated(int indexOfStream)
Der Stream darf keine Daten mehr senden. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private int _maxStreamPacketIndex
private int _currentStreamPacketIndex
private boolean _streamTerminated
killAllStreams
), dann wird dieser boolean true. Streng genommen müßte man die Fälle trennen, aber das bringt keinen
Informationsgewinn, darum findet keine Trennung statt. (Jede Abfrage ob _streamTerminated == true müßte um eine
Variable, ob der Stream "normal" beendet wurde oder der Senderapplikation kill verwendet hat, erweitert werden)
private final StreamMultiplexerDirector _director
Constructor Detail |
---|
public StreamMultiplexer.MultiplexerStreaminformations(int deblockingFactor, StreamMultiplexerDirector director)
deblockingFactor
- Wie viele Pakete werden beim initialen Senden durch den StreamMultiplexer verschicktdirector
- Ein Stream kann mit diesem Objekt anzeigen das er abgebrochen wurde. Somit müssen keine
weiteren Nutzdatenpakete, die mit take
angefordert werden, bereitgestellt
werden.Method Detail |
---|
public int getMaxStreamPacketIndex()
public void setMaxStreamPacketIndex(int maxStreamPacketIndex)
public int getCurrentStreamPacketIndex()
public void setCurrentStreamPacketIndex(int currentStreamPacketIndex)
public boolean isStreamTerminated()
public void setStreamFinished()
take
Aufruf zurückgegeben wird.
public void setStreamTerminated(int indexOfStream)
killAllStreams
des StreamMultiplexer wird aufgerufen. Bei Aufruf dieser Methode wird das Objekt, das
den StreamMultiplexerDirector implementiert, benachrichtigt das es keine weiteren Nutzdatenpakete für den Stream
bereithalten muss.
Wurde der Stream bereits mit setStreamFinished
beendet, bewirkt dieser Methodenaufruf nichts.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |