01: /*
02: * ChainBuilder ESB
03: * Visual Enterprise Integration
04: *
05: * Copyright (C) 2006 Bostech Corporation
06: *
07: * This program is free software; you can redistribute it and/or modify it
08: * under the terms of the GNU General Public License as published by the
09: * Free Software Foundation; either version 2 of the License, or (at your option)
10: * any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15: * for more details.
16: *
17: * You should have received a copy of the GNU General Public License along with
18: * this program; if not, write to the Free Software Foundation, Inc.,
19: * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20: *
21: *
22: * $Id: ParserWsdl1Deployer.java 1214 2006-09-24 04:32:11Z elu $
23: */
24: package com.bostechcorp.cbesb.runtime.component.transformer;
25:
26: import javax.wsdl.extensions.ExtensibilityElement;
27: import javax.wsdl.extensions.ExtensionRegistry;
28:
29: import org.apache.commons.logging.Log;
30: import org.apache.commons.logging.LogFactory;
31:
32: //import org.apache.servicemix.common.BaseComponent;
33: //import org.apache.servicemix.common.Endpoint;
34: //import org.apache.servicemix.common.wsdl1.AbstractWsdl1Deployer;
35: //import org.apache.servicemix.common.wsdl1.JbiEndpoint;
36:
37: import com.bostechcorp.cbesb.runtime.ccsl.jbi.messaging.*;
38:
39: import com.bostechcorp.cbesb.runtime.component.transformer.wsdl.TransformerBinding;
40: import com.bostechcorp.cbesb.runtime.component.transformer.wsdl.TransformerConfig;
41: import com.bostechcorp.cbesb.runtime.component.transformer.wsdl.TransformerExtension;
42:
43: /**
44: * The WSDL deployer class for Transformer component.
45: *
46: * @author elu
47: *
48: */
49: public class TransformerWsdl1Deployer extends Wsdl1Deployer {
50: protected final transient Log logger = LogFactory
51: .getLog(getClass());
52:
53: public TransformerWsdl1Deployer(CbComponent component) {
54: super (component);
55: }
56:
57: protected CbEndpoint createEndpoint(
58: ExtensibilityElement[] portElement,
59: ExtensibilityElement[] bindingElement) {
60:
61: logger.debug("createEndpoint portElement=" + portElement[0]);
62:
63: TransformerEndpoint endpoint = new TransformerEndpoint();
64:
65: if (portElement[0] instanceof TransformerConfig) {
66: TransformerConfig config = (TransformerConfig) portElement[0];
67: endpoint.setRole(config.getRole());
68: endpoint.setDefaultMep(config.getDefaultMep());
69: endpoint.setDefaultOperation(config.getDefaultOperation());
70: endpoint.setTrnFile(config.getTrnFile());
71: }
72: return endpoint;
73: }
74:
75: /* (non-Javadoc)
76: * @see org.apache.servicemix.common.wsdl.AbstractWsdlDeployer#filterPortElement(javax.wsdl.extensions.ExtensibilityElement)
77: */
78: protected boolean filterPortElement(ExtensibilityElement element) {
79: return (element instanceof TransformerConfig);
80: }
81:
82: /* (non-Javadoc)
83: * @see org.apache.servicemix.common.wsdl.AbstractWsdlDeployer#filterBindingElement(javax.wsdl.extensions.ExtensibilityElement)
84: */
85: protected boolean filterBindingElement(ExtensibilityElement element) {
86: return element instanceof TransformerBinding;
87: }
88:
89: /* (non-Javadoc)
90: * @see org.apache.servicemix.common.wsdl.AbstractWsdlDeployer#registerExtensions(javax.wsdl.extensions.ExtensionRegistry)
91: */
92: protected void registerExtensions(ExtensionRegistry registry) {
93: super.registerExtensions(registry);
94: TransformerExtension.register(registry);
95: }
96:
97: }
|