/**
   * Methode : analyzeDataReceived => Traitement des données recu
   *
   * @param received_data
   * @throws java.lang.InterruptedException
   */
  @Override
  public void analyzeDataReceived(String received_data) throws InterruptedException {
    super.setLastReceivedData(received_data);
    switch (received_data) {
      case BONJOUR:
        Thread.sleep(100);
        System.out.println("|BONJOUR| recu dans la classe herité");
        super.sendData(BONJOUR);
        break;

      case DEMANDE_SYNCHRONIZATION_APRES_PARTAGE_ACCES:
        Thread.sleep(100);
        System.out.println(
            "'DEMANDE_SYNCHRONIZATION_APRES_PARTAGE_ACCES' recu dans la classe herité");
        super.sendData(DEMANDE_SYNCHRONIZATION_APRES_PARTAGE_ACCES_AUTORISEE);
        break;

      case PREPARATION_ENREGISTREMENT_CLE_ACCES_ACCREDITEE:
        Thread.sleep(1000);
        System.out.println(
            "'PREPARATION_ENREGISTREMENT_CLE_ACCES_ACCREDITEE' recu dans la classe herité");
        super.sendData(SESAME_PRET_ENREGISTRE_CLE_ACCES);
        break;

      case BEGIN:
        System.out.println("|BEGIN| dans la classe hérité");
        Thread.sleep(100);
        // reset the buffer
        super.resetBufferReception();
        super.setSavingFlag(true);
        break;

      case END:
        Thread.sleep(100);
        System.out.println("|END| dans la classe hérité");
        super.setSavingFlag(false);
        this.checkBufferData();
        break;

      default:
        break;
    }
  }