Beispiel #1
0
        /// <summary>
        /// Konstruktor komunikatora
        /// </summary>
        /// <param name="ipepNaId">Mapowanie punktu kontatku (adres IP,Port) do 
        /// Identyfikatora rozmowcy wszystkich kontaktow uzytkownika</param>
        public Komunikator(Dictionary<string, IPAddress> mapa_ID_PunktKontaktu, Ustawienia ustawienia)
        {
            //inicjalizacja i wypelnianie mapowan pochodnych
            mapownik = new Mapownik(mapa_ID_PunktKontaktu);

            foreach (var i in mapa_ID_PunktKontaktu)
            { dostepnosc.Add(i.Key, false); }

            int port;
            if(ustawienia.SSLWlaczone)
            {
                port = portSSL;
                centrala = new CentralaSSL(mapownik , port ,ustawienia.Certyfikat) ;
            }
            else
            {
                port = portBezSSL; 
                centrala = new Centrala(mapownik, port);
            }
            pingacz = new Pingacz(centrala, dostepnosc);

            nasluchiwacz = new Nasluchiwacz(port);
           
            centrala.NowePolaczenieOdNas += centrala_NowePolaczenieOdNas;
            centrala.NowePolaczenieDoNas += centrala_NowePolaczenieDoNas;
            centrala.ZamknietoPolaczenie += centrala_ZamknietoPolaczenie;

            protokol = new Protokol(centrala, mapownik, ustawienia);
                 
        }
Beispiel #2
0
 public Pingacz(Centrala centrala, Dictionary<string, bool> dostepnosc) 
 {
     this.centrala = centrala;
     this.dostepnosc = dostepnosc;
     this.timer = new Timer();
     timer.Elapsed += timer_Elapsed;
     timer.Interval = 5000;
 }
Beispiel #3
0
        const int DlugoscNaglowka = 5; // 1 bajt na rodzaj komunikatu, 4 na dlugosc

        public Protokol(Centrala centrala, Mapownik mapownik, Ustawienia ustawienia) {
            this.wiadomosciownia = new Wiadomosciownia(centrala,
                new CzytanieSkonczone(czekajNaZapytanie)); ;

            foreach (var i in mapownik.WszystkieId) { wiadomosciownia.DodajUzytkownika(i); }

            this.ustawienia = ustawienia;
            this.centrala = centrala;
            this.mapownik = mapownik;
        }
Beispiel #4
0
 public Wiadomosciownia(Centrala centrala, CzytanieSkonczone czytanieSkonczone)
 {
     this.centrala = centrala;
     this.czytanieSkonczone = czytanieSkonczone;
 }