Package de.archivator.beans

Source Code of de.archivator.beans.DetailBean

/*
* This file is part of archivator, a software system for managing
* and retrieving archived items.
*
* Copyright (C) 2012  müller, dreher,
*                     burghard.britzke bubi@charmides.in-berlin.de
*
*  This program is free software: you can redistribute it and/or modify
*  it under the terms of the GNU General Public License as published by
*  the Free Software Foundation, either version 3 of the License, or
*  (at your option) any later version.
*
*  This program is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  You should have received a copy of the GNU General Public License
*  along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
package de.archivator.beans;

import java.io.Serializable;

import javax.enterprise.context.SessionScoped;
import javax.enterprise.inject.Produces;
import javax.inject.Named;

import org.primefaces.component.tabview.Tab;
import org.primefaces.component.tabview.TabView;
import org.primefaces.event.TabChangeEvent;

import de.archivator.annotations.AktuellesArchivale;
import de.archivator.entities.Archivale;

/**
* Stellt die Funktionen für die view detail.xhtml zur Verfügung. Die Attribute
* einer Archivale werden in der DetailBean zwischengespeichert und beim Wechsel
* auf die Detail Seite abgerufen und dargestellt. Dem Redakteur steht ausserdem
* ein Bearbeiten-Button zur Verfügung, mit diesem gelangt er auf die
* Bearbeitungsansicht. Mit dem Zurück-Button kommt man auf die "Suche"-Seite
* zurück.
*
* @author mueller
* @author dreher
* @author burghard.britzke
*
*/
@Named(value = "detailBean")
@SessionScoped
public class DetailBean implements Serializable {
  private static final long serialVersionUID = 1L;

  @Produces @AktuellesArchivale
  private Archivale aktuellesArchivale;
  private int activeIndex;

  public DetailBean() {
  }

  /**
   * Antwortet mit dem Wert der Eigenschaft aktuellesArchivale.
   *
   * @return der Wert von aktuellesArchivale
   */

  public Archivale getAktuellesArchivale() {
    return aktuellesArchivale;
  }

  /**
   * Ermöglicht es die Eigenschaft aktuellesArchivale zu setzen.
   *
   * @param aktuellesArchivale
   *            Wert der aktuellenArchivale der gesetzt werden soll.
   */
  public void setAktuellesArchivale(Archivale aktuellesArchivale) {
    this.aktuellesArchivale = aktuellesArchivale;
  }

  /**
   * @return the activeIndex
   */
  public int getActiveIndex() {
    return activeIndex;
  }      

  /**
   * @param activeIndex the activeIndex to set
   */
  public void setActiveIndex(int activeIndex) {
    this.activeIndex = activeIndex;
  }

  /**
   * Speichert den <b>activeTab</b> in einer Eigenschaft.
   * @param event Hinweis auf den Parent und somit auf den activeIndex.
   */
  public void onTabChange(TabChangeEvent event) {
        Tab activeTab = event.getTab();
        TabView parent=(TabView)activeTab.getParent();
        activeIndex=parent.getActiveIndex();
  }
}
TOP

Related Classes of de.archivator.beans.DetailBean

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.