EN · DE · RU · FR · ES

#2833: TotalNewCounterModel.java

projectforge-wicket/src/main/java/org/projectforge/web/TotalNewCounterModel.java Tipo: Java · Rol: Componente · Fuente: projectforge-wicket/src/main/java/org/projectforge/web/TotalNewCounterModel.java 73 líneas · 38 código · 27 comentarios · 8 en blanco
Archivo de código fuente en projectforge-wicket/src/main/java/org/projectforge/web/TotalNewCounterModel.java que contiene código Java para la capa de Componente.

Estructura del código

Paquete: org.projectforge.web

Clases: TotalNewCounterModel

Extiende: Model

Métodos (2): getObject

Campos (1): serialVersionUID

Importaciones: 5 paquetes

Código fuente (resumido)

package org.projectforge.web;

import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.projectforge.framework.utils.NumberHelper;

import java.util.ArrayList;
import java.util.List;

/**
 * Para mostrar el número total de elementos nuevos como suma de todos los contadores de las entradas del submenú.
 * @author Kai Reinhard (k.reinhard@micromata.de)
 * 
 */
public class TotalNewCounterModel extends Model<Integer>
{
  private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(TotalNewCounterModel.class);

  private static final long serialVersionUID = -900845361698793144L;

  private final List<IModel<Integer>> models = new ArrayList<IModel<Integer>>();

  public void add(final IModel<Integer> model)
  {
    models.add(model);
  }

  @Override
  public Integer getObject()
  {
    if (models == null) {
      return null;
    }
    Integer totalCounter = 0;
    for (final IModel<Integer> model : models) {
      try {
        final Integer counter = model.getObject();
        if (NumberHelper.greaterZero(counter) == true) {
          totalCounter += counter;
        }
      } catch (final Throwable ex) {
        log.error(ex.getMessage(), ex);
      }
    }
    if (NumberHelper.greaterZero(totalCounter) == false) {
      return null;
    }
    return totalCounter;
  }
}

Historial de Git

868d6abb7 2025 -> 2026
63081666f Encabezados de archivos fuente: 2024 -> 2025.
b6092df09 Derechos de autor 2023 -> 2024
ab45d51fa Derechos de autor 2001-2022 -> 2001-2023.
5f7ef41b8 Derechos de autor 2021 -> 2022