001/*
002 * (C) Copyright 2010 Nuxeo SA (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 */
017package org.nuxeo.ecm.platform.routing.api;
018
019/**
020 * @author <a href="mailto:arussel@nuxeo.com">Alexandre Russel</a>
021 * @deprecated since 5.9.2 - Use only routes of type 'graph'
022 */
023@Deprecated
024public class RouteFolderElement {
025    protected DocumentRouteElement element;
026
027    protected RouteTable table;
028
029    protected boolean isFirstChild;
030
031    protected RouteFolderElement parent;
032
033    protected int totalChildCount;
034
035    protected int depth;
036
037    public RouteFolderElement(DocumentRouteElement element, RouteTable table, boolean isFirstChild,
038            RouteFolderElement parent, int depth) {
039        this.table = table;
040        this.element = element;
041        this.isFirstChild = isFirstChild;
042        this.parent = parent;
043        this.depth = depth;
044    }
045
046    public int getTotalChildCount() {
047        return totalChildCount;
048    }
049
050    public void increaseTotalChildCount() {
051        if (parent != null) {
052            parent.increaseTotalChildCount();
053        } else {
054            table.increaseTotalChildCount();
055        }
056        totalChildCount++;
057    }
058
059    public DocumentRouteElement getRouteElement() {
060        return element;
061    }
062
063    public int getDepth() {
064        return depth;
065    }
066}