01: /*
02: * Copyright (c) 1998-2008 Caucho Technology -- all rights reserved
03: *
04: * This file is part of Resin(R) Open Source
05: *
06: * Each copy or derived work must preserve the copyright notice and this
07: * notice unmodified.
08: *
09: * Resin Open Source is free software; you can redistribute it and/or modify
10: * it under the terms of the GNU General Public License as published by
11: * the Free Software Foundation; either version 2 of the License, or
12: * (at your option) any later version.
13: *
14: * Resin Open Source is distributed in the hope that it will be useful,
15: * but WITHOUT ANY WARRANTY; without even the implied warranty of
16: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, or any warranty
17: * of NON-INFRINGEMENT. See the GNU General Public License for more
18: * details.
19: *
20: * You should have received a copy of the GNU General Public License
21: * along with Resin Open Source; if not, write to the
22: * Free SoftwareFoundation, Inc.
23: * 59 Temple Place, Suite 330
24: * Boston, MA 02111-1307 USA
25: *
26: * @author Scott Ferguson
27: */
28:
29: package com.caucho.ejb.cfg;
30:
31: import com.caucho.ejb.cfg21.EjbEntityConfigProxy;
32: import com.caucho.ejb.cfg21.EjbEntityBean;
33: import com.caucho.config.ConfigException;
34: import com.caucho.util.L10N;
35:
36: /**
37: * Configuration for an ejb bean.
38: */
39: public class EjbEnterpriseBeans {
40: private static final L10N L = new L10N(EjbEnterpriseBeans.class);
41:
42: private final EjbConfig _config;
43: private final String _ejbModuleName;
44:
45: public EjbEnterpriseBeans(EjbConfig config, String ejbModuleName) {
46: _config = config;
47: _ejbModuleName = ejbModuleName;
48: }
49:
50: public EjbSessionConfigProxy createSession() {
51: return new EjbSessionConfigProxy(_config, _ejbModuleName);
52: }
53:
54: public void addSession(EjbSessionConfigProxy sessionProxy)
55: throws ConfigException {
56: EjbSessionBean session = sessionProxy.getSession();
57:
58: _config.setBeanConfig(session.getEJBName(), session);
59: }
60:
61: public EjbEntityConfigProxy createEntity() {
62: return new EjbEntityConfigProxy(_config, _ejbModuleName);
63: }
64:
65: public void addEntity(EjbEntityConfigProxy entityProxy)
66: throws ConfigException {
67: EjbEntityBean entity = entityProxy.getEntity();
68:
69: _config.setBeanConfig(entity.getEJBName(), entity);
70: }
71:
72: public EjbBeanConfigProxy createEjbBean() {
73: return new EjbBeanConfigProxy(_config, _ejbModuleName);
74: }
75:
76: public void addEjbBean(EjbBeanConfigProxy beanProxy)
77: throws ConfigException {
78: EjbBean bean = beanProxy.getBean();
79:
80: if (bean != null)
81: _config.setBeanConfig(bean.getEJBName(), bean);
82: }
83:
84: public EjbMessageConfigProxy createMessageDriven() {
85: return new EjbMessageConfigProxy(_config, _ejbModuleName);
86: }
87:
88: public void addMessageDriven(EjbMessageConfigProxy messageProxy)
89: throws ConfigException {
90: EjbMessageBean message = messageProxy.getMessage();
91:
92: _config.setBeanConfig(message.getEJBName(), message);
93: }
94: }
|