EN · DE · RU · FR · ES

#367: AddressbookFilter.java

projectforge-business/src/main/java/org/projectforge/business/address/AddressbookFilter.java Type : Java · Rôle : Composant · Source : projectforge-business/src/main/java/org/projectforge/business/address/AddressbookFilter.java 149 lignes · 72 code · 58 commentaires · 19 vides
Bean de critères de filtre/recherche pour les requêtes Addressbook. Étend BaseSearchFilter pour fournir des paramètres de requête typés pour les vues de liste et les exportations Excel.

Structure du code

Paquetage : org.projectforge.business.address

Classes : AddressbookFilter

Énumérations : OwnerType

Étend : BaseSearchFilter

Implémente : Serializable

Méthodes (10) : getOwnerType, setOwnerType, isAdmin, isAll, isOwn, isOthers, isReadonlyAccess, setReadonlyAccess, isFullAccess, setFullAccess

Champs (2) : serialVersionUID, abOwner

Importations : 2 paquetages

Code source (abrégé)

package org.projectforge.business.address;

import org.projectforge.framework.persistence.api.BaseSearchFilter;

import java.io.Serializable;

/**
 * @author M. Lauterbach (m.lauterbach@micromata.de)
 */
public class AddressbookFilter extends BaseSearchFilter implements Serializable
{
  private static final long serialVersionUID = 7410573665085873058L;

  public enum OwnerType
  {
    ALL, OWN, OTHERS, ADMIN
  }

  private boolean fullAccess, readonlyAccess;

  protected OwnerType abOwner;

  public AddressbookFilter()
  {
    this(null);
  }

  public AddressbookFilter(final BaseSearchFilter filter)
  {
    super(filter);
    fullAccess = readonlyAccess = true;
    abOwner = OwnerType.ALL;
    if (filter instanceof AddressbookFilter) {
      final AddressbookFilter obj = (AddressbookFilter) filter;
      this.fullAccess = obj.isFullAccess();
      this.readonlyAccess = obj.isReadonlyAccess();
      this.abOwner = obj.getOwnerType();
    }
  }

  /**
   * @return le type de filtre
   */
  public OwnerType getOwnerType()
  {
    return abOwner;
  }

  /**
   * @param calOwner le type de filtre à définir
   * @return this pour chaînage.
   */
  public AddressbookFilter setOwnerType(final OwnerType calOwner)
  {
    this.abOwner = calOwner;
    return this;
  }

  /**
   * @return true si calOwner == {@link OwnerType#ADMIN}
   */
  public boolean isAdmin()
  {
    return abOwner == OwnerType.ADMIN;
  }

  /**
   * @return true si calOwner == {@link OwnerType#OWN}
   */
  public boolean isAll()
  {
    return abOwner == OwnerType.ALL;
  }

  /**
   * @return true si calOwner == {@link OwnerType#OWN}
   */
  public boolean isOwn()
  {
    return abOwner == OwnerType.OWN;
  }

  /**
   * @return true si calOwner == {@link OwnerType#OTHERS}
   */
  public boolean isOthers()
  {
    return abOwner == OwnerType.OTHERS;
  }

  /**
   * @return le readonlyAccess
   */
  public boolean isReadonlyAccess()
  {
    return readonlyAccess;
  }

  /**
   * @param readonlyAccess le readOnlyAccess à définir
   * @return this pour chaînage.
   */
  public AddressbookFilter setReadonlyAccess(final boolean readonlyAccess)
  {
    this.readonlyAccess = readonlyAccess;
    return this;
  }

  /**
   * @return le fullAccess
   */
  public boolean isFullAccess()
  {
    return fullAccess;
  }

  /**
   * @param fullAccess le fullAccess à définir
   * @return this pour chaînage.
// ... (tronqué, total 127 lignes)

Historique Git

868d6abb7 2025 -> 2026
63081666f En-têtes des fichiers source : 2024 -> 2025.
b6092df09 Copyright 2023 -> 2024
ab45d51fa Copyright 2001-2022 -> 2001-2023.
5f7ef41b8 Copyright 2021 -> 2022