package elte.java2_utikalauz5.net;
import java.io.*;
import java.net.*;
/**
Megbízható adatcsatornánkon csomagokat fogad.
Ez az alkalmazás csomagokat fogad a futtató számítógép
megadott sorszámú UDP-portjáról, a fogadott csomag tartalmát pedig
kiírja a képernyőre (szabványos kimenetre). Ha a csomagok nem a
vart sorrendben érkeznek, akkor a pozitív visszajelzési és
újraküldési eljárással lesz biztosítva a helyes átviteli sorrend megtartása.
Programparaméterek:
- a szerver UDP-portjának a sorszáma
- a fogadni kívánt adatcsomagok száma
@link.forrásfájl {@docRoot}/../data/net/src Sorozatfogad.java
@link.letöltés {@docRoot}/../data/net Sorozatfogad.jar
@since Java 2 Útikalauz programozóknak 1.3
*/
public class Sorozatfogad {
public static void használati_utasítás() {
System.out.println("Használat: java Sorozatfogad " +
" portsorszám csomag_darabszám");
System.exit(-1);
}
public static void main(String[] args) {
int server_port = 0;
if (args.length != 2) használati_utasítás(); // sok/kevés argumentum
try {
server_port = Integer.parseInt(args[0]); // szerver port-sorszáma
} catch (NumberFormatException e) {
használati_utasítás();
}
try {
MegbizhatoEgyiranyuDatagramSocket s =
new MegbizhatoEgyiranyuDatagramSocket(server_port);
byte[] üzenet = new byte[1500]; // helyet csinálunk az üzenetnek
String szöveg; // hely a Stringgé konvertált üzenetnek (szükséges,
// ugyanis Stringként akarjuk kiíratni, így
// konvertálni kell majd)
// Létrehozunk egy csomagot, ahová a beérkező üzenetet tesszük
DatagramPacket p = new DatagramPacket(üzenet, üzenet.length);
// Az adott UDP-porton létrehozzuk a szerver kommunikációs végpontot
for (int i=0;i