EN · DE · RU · FR · ES

#580 : TeamEventAttendeeStatus.java

projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java Type : Java · Rôle : Calendrier · Source : projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java 118 lignes · 72 code · 34 commentaires · 12 vides
Fichier source à projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java contenant du code Java pour la couche Calendrier.

Structure du code

Paquetage : org.projectforge.business.teamcal.event.model

Énumérations : TeamEventAttendeeStatus

Implémente : I18nEnum

Méthodes (6) : getKey, getI18nKey, getI18nValue, isIn, getPartStat, getStatusForPartStat

Champs (2) : key, partStat

Importations : 3 paquetages

Code source (abrégé)

package org.projectforge.business.teamcal.event.model;

import net.fortuna.ical4j.model.parameter.PartStat;
import org.projectforge.common.i18n.I18nEnum;
import org.projectforge.framework.i18n.I18nHelper;

/**
 * @author Kai Reinhard (k.reinhard@micromata.de)
 */
public enum TeamEventAttendeeStatus implements I18nEnum
{
  ACCEPTED("accepted", PartStat.ACCEPTED),
  COMPLETED("completed", PartStat.COMPLETED),
  DECLINED("declined", PartStat.DECLINED),
  DELEGATED("delegated", PartStat.DELEGATED),
  IN_PROCESS("in_process", PartStat.IN_PROCESS),
  NEEDS_ACTION("needs_action", PartStat.NEEDS_ACTION),
  TENTATIVE("tentative", PartStat.TENTATIVE);

  private String key;
  private PartStat partStat;

  /**
   * @return Le suffixe de clé sera utilisé p. ex. pour l'i18n.
   */
  public String getKey()
  {
    return key;
  }

  /**
   * @return La clé i18n complète incluant le préfixe i18n "fibu.auftrag.status.".
   */
  @Override
  public String getI18nKey()
  {
    return "plugins.teamcal.attendee.status." + key;
  }

  /**
   * @return La valeur localisée i18n.
   */
  public String getI18nValue()
  {
    return I18nHelper.getLocalizedMessage(getI18nKey());
  }

  TeamEventAttendeeStatus(final String key, final PartStat partStat)
  {
    this.key = key;
    this.partStat = partStat;
  }

  public boolean isIn(final TeamEventAttendeeStatus... status)
  {
    for (final TeamEventAttendeeStatus st : status) {
      if (this == st) {
        return true;
      }
    }
    return false;
  }

  public PartStat getPartStat()
  {
    return this.partStat;
  }

  public static TeamEventAttendeeStatus getStatusForPartStat(final String partStat)
  {
    if (PartStat.ACCEPTED.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.ACCEPTED;
    }
    if (PartStat.COMPLETED.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.COMPLETED;
    }
    if (PartStat.DECLINED.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.DECLINED;
    }
    if (PartStat.DELEGATED.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.DELEGATED;
    }
    if (PartStat.IN_PROCESS.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.IN_PROCESS;
    }
    if (PartStat.NEEDS_ACTION.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.NEEDS_ACTION;
    }
    if (PartStat.TENTATIVE.getValue().equals(partStat)) {
      return TeamEventAttendeeStatus.TENTATIVE;
    }

    return null;
  }
}

Historique Git

868d6abb7 2025 → 2026
63081666f En-têtes des fichiers source : 2024 → 2025.
b6092df09 Droits d'auteur 2023 → 2024
ab45d51fa Droits d'auteur 2001-2022 → 2001-2023.
5f7ef41b8 Droits d'auteur 2021 → 2022