EN · DE · RU · FR · ES

#580: TeamEventAttendeeStatus.java

projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java Тип: Java · Роль: Календарь · Исходник: projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java 118 строк · 72 кода · 34 комментария · 12 пустых
Файл исходного кода projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java, содержащий Java-код для слоя «Календарь».

Структура кода

Пакет: org.projectforge.business.teamcal.event.model

Перечисления: TeamEventAttendeeStatus

Реализует: I18nEnum

Методы (6): getKey, getI18nKey, getI18nValue, isIn, getPartStat, getStatusForPartStat

Поля (2): key, partStat

Импорты: 3 пакета

Исходный код (сокращённый)

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 Ключ-суффикс будет использоваться, например, для i18n.
   */
  public String getKey()
  {
    return key;
  }

  /**
   * @return Полный i18n-ключ, включая префикс "fibu.auftrag.status.".
   */
  @Override
  public String getI18nKey()
  {
    return "plugins.teamcal.attendee.status." + key;
  }

  /**
   * @return Локализованное значение 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;
  }
}

История Git

868d6abb7 2025 → 2026
63081666f Заголовки исходных файлов: 2024 → 2025.
b6092df09 Авторские права 2023 → 2024
ab45d51fa Авторские права 2001-2022 → 2001-2023.
5f7ef41b8 Авторские права 2021 → 2022