src/core/net/sf/basedb/util/extensions/WrappingRenderer.java

Code
Comments
Other
Rev Date Author Line
4870 01 Apr 09 nicklas 1 /**
4870 01 Apr 09 nicklas 2   $Id$
4870 01 Apr 09 nicklas 3
4870 01 Apr 09 nicklas 4   Copyright (C) Authors contributing to this file.
4870 01 Apr 09 nicklas 5
4870 01 Apr 09 nicklas 6   This file is part of BASE - BioArray Software Environment.
4870 01 Apr 09 nicklas 7   Available at http://base.thep.lu.se/
4870 01 Apr 09 nicklas 8
4870 01 Apr 09 nicklas 9   BASE is free software; you can redistribute it and/or
4870 01 Apr 09 nicklas 10   modify it under the terms of the GNU General Public License
4870 01 Apr 09 nicklas 11   as published by the Free Software Foundation; either version 3
4870 01 Apr 09 nicklas 12   of the License, or (at your option) any later version.
4870 01 Apr 09 nicklas 13
4870 01 Apr 09 nicklas 14   BASE is distributed in the hope that it will be useful,
4870 01 Apr 09 nicklas 15   but WITHOUT ANY WARRANTY; without even the implied warranty of
4870 01 Apr 09 nicklas 16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4870 01 Apr 09 nicklas 17   GNU General Public License for more details.
4870 01 Apr 09 nicklas 18
4870 01 Apr 09 nicklas 19   You should have received a copy of the GNU General Public License
4870 01 Apr 09 nicklas 20   along with BASE. If not, see <http://www.gnu.org/licenses/>.
4870 01 Apr 09 nicklas 21 */
4870 01 Apr 09 nicklas 22 package net.sf.basedb.util.extensions;
4870 01 Apr 09 nicklas 23
4870 01 Apr 09 nicklas 24 /**
4870 01 Apr 09 nicklas 25   An extension to the regular renderer interface 
4870 01 Apr 09 nicklas 26   intended for renderers that wants to wrap an existing
4870 01 Apr 09 nicklas 27   renderer to give the result their own touch.
4870 01 Apr 09 nicklas 28
4870 01 Apr 09 nicklas 29   @author nicklas
4870 01 Apr 09 nicklas 30   @version 2.12
4870 01 Apr 09 nicklas 31   @base.modified $Date$
4870 01 Apr 09 nicklas 32 */
4870 01 Apr 09 nicklas 33 public interface WrappingRenderer<A extends Action>
4870 01 Apr 09 nicklas 34   extends Renderer<A>
4870 01 Apr 09 nicklas 35 {
4870 01 Apr 09 nicklas 36
4870 01 Apr 09 nicklas 37   /**
4870 01 Apr 09 nicklas 38     Set a parent renderer. Some implementations may 
4870 01 Apr 09 nicklas 39     have restrictions on this method. For example,
4870 01 Apr 09 nicklas 40     they may not allow a parent renderer to be set after 
4870 01 Apr 09 nicklas 41     the object has been constructed, or they may not
4870 01 Apr 09 nicklas 42     allow the parent to be set to null, etc.
4870 01 Apr 09 nicklas 43     
4870 01 Apr 09 nicklas 44     @param parent The parent renderer that should be
4870 01 Apr 09 nicklas 45       wrapped by this renderer
4870 01 Apr 09 nicklas 46     @throws UnsupportedOperationException If the implementation
4870 01 Apr 09 nicklas 47       doesn't support this method
4870 01 Apr 09 nicklas 48   */
4870 01 Apr 09 nicklas 49   public void setParent(Renderer<? super A> parent);
4870 01 Apr 09 nicklas 50   
4870 01 Apr 09 nicklas 51   /**
4870 01 Apr 09 nicklas 52     Get the current parent renderer.
4870 01 Apr 09 nicklas 53     @return A renderer or null if there is no
4870 01 Apr 09 nicklas 54       parent
4870 01 Apr 09 nicklas 55   */
4870 01 Apr 09 nicklas 56   public Renderer<? super A> getParent();
4870 01 Apr 09 nicklas 57   
4870 01 Apr 09 nicklas 58 }