001/*
002 * (C) Copyright 2006-2007 Nuxeo SAS (http://nuxeo.com/) and contributors.
003 *
004 * All rights reserved. This program and the accompanying materials
005 * are made available under the terms of the GNU Lesser General Public License
006 * (LGPL) version 2.1 which accompanies this distribution, and is available at
007 * http://www.gnu.org/licenses/lgpl.html
008 *
009 * This library is distributed in the hope that it will be useful,
010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012 * Lesser General Public License for more details.
013 *
014 * Contributors:
015 *     Nuxeo - initial API and implementation
016 *
017 * $Id: JOOoConvertPluginImpl.java 18651 2007-05-13 20:28:53Z sfermigier $
018 */
019
020package org.nuxeo.ecm.webapp.trashManagement;
021
022/**
023 * Seam component used to manage named lists of documents.
024 * <p>
025 * Managing the DM lists into this component instead of directly inside the Seam context offers the following
026 * advantages:
027 * <ul>
028 * <li>DM Lists life cycle management can be done transparently, the DocumentsListsManager can use internal fields or
029 * differently scoped variables (Conversation, Process ...)
030 * <li>DocumentsListsManager provides (will) an Extension Point mechanism to register new names lists
031 * <li>DocumentsListsManager provides add configurations to each lists
032 * <ul>
033 * <li>List Name
034 * <li>List Icon
035 * <li>List append behavior
036 * <li>Category of the list
037 * <li>...
038 * </ul>
039 * <li>DocumentsListsManager provides helpers features for merging and resetting lists
040 * </ul>
041 *
042 * @author tiry
043 */
044public interface TrashManager {
045
046    /**
047     * Checks if trash management is enabled.
048     *
049     * @return true if trash management is enabled
050     */
051    boolean isTrashManagementEnabled();
052
053    void destroy();
054
055    void initTrashManager();
056
057}