コード例 #1
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  public String cekajPotez(int idSobe) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      NabaviPaket paket = new NabaviPaket(23);
      paket.setIdSobe(idSobe);
      paketZaServer.writeObject(paket);

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket paketSKljucem = (NabaviPaket) paketOdServera.readObject();

      paketZaServer.close();
      paketOdServera.close();
      System.out.println("CekajPotez -> " + paketSKljucem.getErr());
      return paketSKljucem.getErr();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return null;
  }
コード例 #2
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  /**
   * Funkcija za autorizaciju korisnika.
   *
   * @param korisnik
   * @param zaporka
   * @return vraæa null ako je autorizacija uspjela inaèe vraæa poruku greške.
   */
  public String login(Igrac korisnik, String zaporka) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      paketZaServer.writeObject(
          new NabaviPaket(0, korisnik.getIme(), zaporka)); // send serilized payload

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket paketSKljucem = (NabaviPaket) paketOdServera.readObject();
      if (paketSKljucem.isIndex(0)) {
        korisnik.setKljucKorisnika(paketSKljucem.getKljuc());
        return null;
      } else if (paketSKljucem.isIndex(-1)) {
        return paketSKljucem.getErr();
      }

      paketZaServer.close();
      paketOdServera.close();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return "Iznimka reda 0";
  }
コード例 #3
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  /**
   * Pokreæe DretvaPartija na serveru.
   *
   * @param idSobe
   * @return uspjesno pokrenuta dretva.
   */
  public boolean zapocniIgru(int idSobe) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      NabaviPaket paket = new NabaviPaket(5);
      paket.setIdSobe(idSobe);
      paketZaServer.writeObject(paket);

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket paketSKljucem = (NabaviPaket) paketOdServera.readObject();
      if (paketSKljucem.isIndex(5)) {
        return true;
      } else if (paketSKljucem.isIndex(-1)) {
        return false;
      }

      paketZaServer.close();
      paketOdServera.close();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return false;
  }
コード例 #4
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  /**
   * Funkcija koja registrira korisnika na server.
   *
   * @param ime
   * @param zaporka
   * @param email
   * @return vraæa "radi" ako je registracija uspjela, inaèe vrati poruku pogreške.
   */
  public String registrirajKorisnika(String ime, String zaporka, String email) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      paketZaServer.writeObject(new NabaviPaket(1, ime, zaporka, email));

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket dolazniPaket = (NabaviPaket) paketOdServera.readObject();
      if (dolazniPaket.isIndex(1)) {
        return "radi";
      } else if (dolazniPaket.isIndex(7)) {
        return dolazniPaket.getErr();
      }

      paketZaServer.close();
      paketOdServera.close();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return "Iznimka reda 0";
  }
コード例 #5
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  public LjudiUSobi dohvatiLjudeUSobi(int idSobe, int kljucKorisnika) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      NabaviPaket paket = new NabaviPaket(16);
      paket.setIdSobe(idSobe);
      paket.setKljuc(kljucKorisnika);
      paketZaServer.writeObject(paket);

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket paketLjudima = (NabaviPaket) paketOdServera.readObject();

      paketZaServer.close();
      paketOdServera.close();

      LjudiUSobi ljudi = new LjudiUSobi();
      ljudi.setLjudiUSobi(paketLjudima.getUser().split(","));
      ljudi.setMaxLjudi(paketLjudima.getKljuc());
      return ljudi;
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return null;
  }
コード例 #6
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  /**
   * Funkcija za deautorizaciju korisnika
   *
   * @param korisnik
   * @return vraæa null ako je autorizacija uspjela inaèe vraæa poruku greške.
   */
  public String logout(Igrac korisnik) {
    connect();
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      NabaviPaket t = new NabaviPaket(6);
      t.setUser(korisnik.getIme());
      paketZaServer.writeObject(t);

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      NabaviPaket paket = (NabaviPaket) paketOdServera.readObject();
      if (paket.isIndex(4)) {
        return null;
      } else if (paket.isIndex(-1)) {
        return paket.getErr();
      }

      paketZaServer.close();
      paketOdServera.close();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return "Iznimka reda 0";
  }
コード例 #7
0
ファイル: Paket.java プロジェクト: toka88/sedmica
  /**
   * Funkcija vraæa korisniku skup njegovih karata. TODO -NAPOMENA2 - OVO KAD JEDAN ZADRAŽI TREBA
   * BITI BRODCASTANO SVIMA!!!
   *
   * @param idKorisnika
   * @return
   */
  public Potez dohvatiKarte(int idKorisnika) {
    connect();
    Potez paketKarata = null;
    try {
      ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream());
      NabaviPaket paket = new NabaviPaket(21);
      paket.setKljuc(idKorisnika);
      paketZaServer.writeObject(paket);

      ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream());
      paketKarata = (Potez) paketOdServera.readObject();

      paketZaServer.close();
      paketOdServera.close();
    } catch (IOException ioe) {
      System.out.println("Iznimka ulaza/izlaza");
      System.exit(1);
    } catch (ClassNotFoundException k) {
      System.out.println("Dobivena kriva klasa " + k);
    } finally {
      close();
    }
    return paketKarata;
  }