/******************************************************************************* * Copyright (c) 2006-2011 Gluster, Inc. * This file is part of Gluster Management Console. * * Gluster Management Console 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. * * Gluster Management Console 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 * . *******************************************************************************/ package org.gluster.storage.management.core.model; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import org.eclipse.core.runtime.PlatformObject; import org.gluster.storage.management.core.utils.StringUtil; @XmlRootElement public class Entity extends PlatformObject implements Filterable { protected String name; protected List children = new ArrayList(); private Entity parent; public Entity() { } public String getName() { return name; } public void setName(String name) { this.name = name; } @XmlTransient public Entity getParent() { return parent; } public void setParent(Entity parent) { this.parent = parent; } public List getChildren() { return children; } public void setChildren(List children) { this.children = children; } public Entity(String name, Entity parent) { this.name = name; this.parent = parent; } public Entity(String name, Entity parent, List children) { this.name = name; this.parent = parent; this.children = children; } @Override public boolean filter(String filterString, boolean caseSensitive) { return StringUtil.filterString(getName(), filterString, caseSensitive); } @Override public String toString() { return name; } }