예제 #1
0
 /**
  * Zmienia stan koordynatora
  * @param state nowy stan
  */
 public void changeState(CoordinatorState state)
 {
     this.stopTimer();
     this.startTimer(TIMEOUT);
     this.state = state;
     state.setCoordinator(this);
 }
예제 #2
0
 protected void setState(CoordinatorState state)
 {
     this.state = state;
     state.setCoordinator(this);
 }
예제 #3
0
 /**
  * <!-- begin-UML-doc -->
  * <p>
  *     Obsluguje odpowiedz wezla na wiadomosc.
  * </p>
  * <p>
  *     Jezeli nie jest to ostatni wezel, to koordynator czeka na nastepna wiadomosc.
  * </p>
  * <p>
  *     Jezeli jest to ostatni wezel, to koordynator wysyla nastepna wiadomosc do wszystkich wezlow uczestniczacych w
  *     transakcji oraz zmienia stan.
  * </p>
  * <!-- end-UML-doc -->
  * @param node <p>
  *    Wezel, ktory odpowiedzial na poprzednia wiadomosc.
  * /p>
  * @param message Nastepna wiadomosc do wyslania do wszystkich wezlow uczestniczacych w transakcji.
  * @param nextState Nastepny stan.
  * @generated "UML to Java (com.ibm.xtools.transform.uml2.java5.internal.UML2JavaTransform)"
  */
 public void processAnswer(IPEndPoint node, TPCMessage message, CoordinatorState nextState)
 {
     addAnswer(node);
     if(checkAnswers()) {
     broadcastMessage(message);
     changeState(nextState);
     }
 }