Rezervační systém
Klientská aplikace

Obsah

Hlavní části

Klientskou aplikaci tvoří tři základní bloky - uživatelské rozhraní, logika klienta a modul pro připojení k serveru. Schematicky to vystihuje obrázek na hlavní stránce včetně jejich vzájemné interakce.

Přeložená klientská aplikace se skládá z jediného spustitelného souboru brs_client.exe. V závislosti na nastavení souboru projektu mohou být ke spuštění potřeba běhové knihovny Microsoft C++ RTL v příslušné verzi, obvykle se umisťují do systémových adresářů (nebo mohou být přilinkovány přímo do aplikace). Dále aplikace používá jen knihovny, které jsou nedílnou součástí operačního systému.

Konfigurace

U klientské aplikace je potřeba konfigurovat jednak parametry připojení k serveru a dále zda chceme základní či rozšířenou verzi klienta. To znamená druh transportu a bližší specifikace přípojného bodu na straně serveru. Uvedené parametry klietská aplikace očekává v souboru brs_client.conf ve stejném adresáři jako je vlastní spustitelný soubor. Jedná se o jednoduchý textový soubor, jehož příklad následuje:

# Bus Reservation System
#
# konfigurace klientské aplikace
#
# typ transportu pro připojení k serveru - možnosti tcp, msg
transport=tcp
# přípojný bod na straně serveru - IP adresa a port pro TCP, jméno okna pro zprávy Windows
endpoint=localhost:25100
# přepínání mezi základní (defaultní) a rozšířenou verzí klienta
#full_client=1

Podstatné jsou řádky uvozené slovy transport a endpoint, za rovnítkem přímo následuje parametr. Řádky uvozené znakem # jsou komentáře, při zpracování souboru se ignorují.

Na základě zvoleného druhu transportu se v klientské aplikaci vytváří instance třídy CClientTcp nebo CClientMsg, přípojný bod se předává konstruktoru příslušné třídy. Podrobnosti o podporovaných formátech lze nalézt v dokumentaci konstruktorů uvedených tříd.

Je zřejmé, že nastavení klientské a serverové aplikace (viz) spolu musí korespondovat, jinak se nenaváže komunikace mezi nimi. V případě použití TCP protokolu je ještě potřeba zkontrolovat (a případně upravit) nastavení firewallu.

Poslední konfigurační položka (full_client) určuje, zda aplikace bude pracovat v normálním nebo dispečerském režimu. Odlišnost je v tom, že dispečerský režim má zpřístupněny všechny příkazy, režim normální obsluhy nemá umožněno vkládat a vyjímat objekty (města, autobusy apod.).

Popis příkazů

V okamžiku, kdy je aplikace připravena přijmout další příkaz, zobrazí se prompt ve tvaru >. Zadání jednotlivého příkazu se potvrdí stiskem ENTER. Příkazy (jednoduchá anglická slova) lze vkládat bez ohledu na velikost písmen, u parametrů (např. jména měst) však již na velikosti písmen záleží. Víceslovné parametry (např. Nove Mesto nad Metuji) vkládáme do uvozek. Jednotlivé parametry jsou odděleny mezerou.

Poznámka
Otázku použití národních znakových sad jsem neřešil (důvody viz dále), proto je v následujícím možno nalézt ceska jména měst.

Vkládání a vyjímání objektů

Pozor
Příkazy v této sekci jsou dostupné pouze z rozšířené (dispečerské) verze klientské aplikace.

Rezervace sedadel

Ostatní