1 /*==================================================================== 2 3 OpenCCM: The Open CORBA Component Model Platform 4 Copyright (C) 2000-2004 INRIA - USTL - LIFL - GOAL 5 Contact: openccm@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): Briclet Frédéric. 23 Contributor(s): ______________________________________. 24 25 ====================================================================*/ 26 package org.objectweb.openccm.descriptor.softpkg.ccm; 27 28 import org.objectweb.openccm.descriptor.softpkg.beans.LinkBeanImpl; 29 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.HandlerBase; 30 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.InitializationError; 31 32 /** 33 * This handler is used to produce linkdeployer from an 34 * link bean . 35 * 36 * @author <a HREF="mailto:briclet@lifl.fr">Briclet Frédéric</a> 37 * 38 * @version 0.1 39 */ 40 public class LinkDeployerHandler 41 extends HandlerBase 42 { 43 // ================================================================== 44 // 45 // Internal state. 46 // 47 // ================================================================== 48 private LinkDeployer _deploy; 49 // ================================================================== 50 // 51 // Constructors. 52 // 53 // ================================================================== 54 // ================================================================== 55 // 56 // Internal methods. 57 // 58 // ================================================================== 59 // ================================================================== 60 // 61 // Public methods. 62 // 63 // ================================================================== 64 /** 65 * Produce the link deployer binded 66 * to the givean @param cons. 67 * 68 * @param cons The link bean 69 * @return the deployer produced in initialize state 70 * @throws InitializationError thrown if a problem is detected 71 */ 72 public Object 73 getInstance(LinkBeanImpl cons) 74 throws InitializationError 75 { 76 if (_deploy == null) { 77 _deploy=new LinkDeployer(); 78 _deploy.connectLink(cons); 79 applyCommonConfig(_deploy); 80 _deploy.initialize(); 81 } 82 return (_deploy); 83 } 84 } 85