Hallo,
ich möchte mit einem Server über ein Protokoll kommunizieren. Das Protokoll ist zwar nicht so schwierig, es werden aber Strings vom Server zu Client hin und hergeschickt und dazu hätte ich eine Frage.
Ich sende einen String zum Server z.B.: 01 ANFRAGE CLIENTID
und bekomme je nach ANFRAGE- Text eine Antwort als String 01 ANTWORT CLIENTID (ANTWORT, CLIENTID haben eine definierte länge, z.B.: 15 Zeichen ANTWORT, 20 Zeichen CLIENTID)
Je nach Antwort sende ich dann wieder eine ANFRAGE an den Server usw.
Das schaut für mich sehr nach State- Maschine aus und es gibt auch ein State- Diagramm, wo das dargestellt ist.
Meine Frage wäre jetzt, wie man das am Besten implementiert, Die Anfragen mit einem StringBuffer zusammenzustellen dürfte kein Problem sein. Was schon eher ein Problem ist sind die Antworten, da ich zuerst wahrscheinlich mit "substring" die einzelnen Sachen aus dem Protokoll heraussuchen muss (Antwort, ClientID,..) und dann leider kein switch - case für die Strings einsetzen kann.
Hat vielleicht jemand eine Idee wie man das am Besten machen kann ohne eine rießige if-else if wurst zu schreiben?
Vielen Dank,
lg
ich möchte mit einem Server über ein Protokoll kommunizieren. Das Protokoll ist zwar nicht so schwierig, es werden aber Strings vom Server zu Client hin und hergeschickt und dazu hätte ich eine Frage.
Ich sende einen String zum Server z.B.: 01 ANFRAGE CLIENTID
und bekomme je nach ANFRAGE- Text eine Antwort als String 01 ANTWORT CLIENTID (ANTWORT, CLIENTID haben eine definierte länge, z.B.: 15 Zeichen ANTWORT, 20 Zeichen CLIENTID)
Je nach Antwort sende ich dann wieder eine ANFRAGE an den Server usw.
Das schaut für mich sehr nach State- Maschine aus und es gibt auch ein State- Diagramm, wo das dargestellt ist.
Meine Frage wäre jetzt, wie man das am Besten implementiert, Die Anfragen mit einem StringBuffer zusammenzustellen dürfte kein Problem sein. Was schon eher ein Problem ist sind die Antworten, da ich zuerst wahrscheinlich mit "substring" die einzelnen Sachen aus dem Protokoll heraussuchen muss (Antwort, ClientID,..) und dann leider kein switch - case für die Strings einsetzen kann.
Hat vielleicht jemand eine Idee wie man das am Besten machen kann ohne eine rießige if-else if wurst zu schreiben?
Vielen Dank,
lg