EN · DE · RU · FR · ES

#580: TeamEventAttendeeStatus.java

projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java Typ: Java · Rolle: Kalender · Quelle: projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java 118 Zeilen · 72 Code · 34 Kommentare · 12 leer
Quellcodedatei unter projectforge-business/src/main/java/org/projectforge/business/teamcal/event/model/TeamEventAttendeeStatus.java mit Java-Code für die Kalenderschicht.

Codestruktur

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

Enums: TeamEventAttendeeStatus

Implementiert: I18nEnum

Methoden (6): getKey, getI18nKey, getI18nValue, isIn, getPartStat, getStatusForPartStat

Felder (2): key, partStat

Importe: 3 Pakete

Quellcode (gekürzt)

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 Der Schlüsselsuffix wird z. B. für die Internationalisierung verwendet.
   */
  public String getKey()
  {
    return key;
  }

  /**
   * @return Der vollständige i18n-Schlüssel inklusive des i18n-Präfixes "fibu.auftrag.status.".
   */
  @Override
  public String getI18nKey()
  {
    return "plugins.teamcal.attendee.status." + key;
  }

  /**
   * @return Der lokalisierte i18n-Wert.
   */
  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-Verlauf

868d6abb7 2025 -> 2026
63081666f Quellcodedatei-Header: 2024 -> 2025.
b6092df09 Copyright 2023 -> 2024
ab45d51fa Copyright 2001-2022 -> 2001-2023.
5f7ef41b8 Copyright 2021 -> 2022