1 /*=========================================================================== 2 3 ObjectWeb Naming Context Framework 4 Copyright (C) 2002 USTL - LIFL - GOAL 5 Contact: architecture@objectweb.org 6 7 This library is free software; you can redistribute it and/or 8 modify it under the terms of the GNU Lesser General Public 9 License as published by the Free Software Foundation; either 10 version 2.1 of the License, or any later version. 11 12 This library is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 Lesser General Public License for more details. 16 17 You should have received a copy of the GNU Lesser General Public 18 License along with this library; if not, write to the Free Software 19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 20 USA 21 22 Initial developer(s): Philippe Merle, Jerome Moroy. 23 Contributor(s): ______________________________________. 24 25 ===========================================================================*/ 26 27 package org.objectweb.util.browser.core.api; 28 29 /** 30 * 31 * 32 * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a> 33 * @version 0.1 34 */ 35 public interface Decoder { 36 37 // ================================================================== 38 // 39 // Internal state. 40 // 41 // ================================================================== 42 43 // ================================================================== 44 // 45 // Constructors. 46 // 47 // ================================================================== 48 49 // ================================================================== 50 // 51 // Internal methods. 52 // 53 // ================================================================== 54 55 // ================================================================== 56 // 57 // Public methods. 58 // 59 // ================================================================== 60 61 /** 62 * Uses to decode an object, for example if it's a CORBA Object 63 * @param node The object to decode 64 * @return the decoded object 65 */ 66 public Object decode(Object node); 67 68 /** 69 * Fixes the next element of the chain 70 * @param decoder The next decoder 71 */ 72 public void setNext(Decoder decoder); 73 74 } 75