KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > geronimo > connector > deployment > dconfigbean > ResourceAdapter_1_0DConfigRoot


1 /**
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 package org.apache.geronimo.connector.deployment.dconfigbean;
19
20 import java.io.IOException JavaDoc;
21 import java.io.InputStream JavaDoc;
22 import javax.enterprise.deploy.model.DDBean JavaDoc;
23 import javax.enterprise.deploy.model.DDBeanRoot JavaDoc;
24 import javax.enterprise.deploy.spi.DConfigBean JavaDoc;
25 import javax.enterprise.deploy.spi.exceptions.ConfigurationException JavaDoc;
26
27 import org.apache.geronimo.deployment.plugin.DConfigBeanRootSupport;
28 import org.apache.geronimo.xbeans.geronimo.GerConnectionDefinitionType;
29 import org.apache.geronimo.xbeans.geronimo.GerConnectorDocument;
30 import org.apache.xmlbeans.SchemaTypeLoader;
31 import org.apache.xmlbeans.XmlException;
32
33 /**
34  *
35  *
36  * @version $Rev: 476049 $ $Date: 2006-11-16 23:35:17 -0500 (Thu, 16 Nov 2006) $
37  *
38  * */

39 public class ResourceAdapter_1_0DConfigRoot extends DConfigBeanRootSupport {
40
41     private static String JavaDoc[] XPATHS = {
42         "connector/resourceadapter"
43     };
44
45     private ConnectionDefinitionDConfigBean connectionDefinitionDConfigBean;
46
47     public ResourceAdapter_1_0DConfigRoot(DDBeanRoot JavaDoc ddBean) {
48         super(ddBean, GerConnectorDocument.Factory.newInstance());
49         GerConnectionDefinitionType connectionDefinition = getConnectorDocument().addNewConnector().addNewResourceadapter().addNewOutboundResourceadapter().addNewConnectionDefinition();
50         replaceConnectionDefinitionDConfigBean(connectionDefinition);
51     }
52
53     private void replaceConnectionDefinitionDConfigBean(GerConnectionDefinitionType connectionDefinition) {
54         DDBean JavaDoc ddBean = getDDBean();
55         DDBean JavaDoc childDDBean = ddBean.getChildBean(getXpaths()[0])[0];
56         connectionDefinitionDConfigBean = new ConnectionDefinitionDConfigBean(childDDBean, connectionDefinition);
57     }
58
59     GerConnectorDocument getConnectorDocument() {
60         return (GerConnectorDocument) getXmlObject();
61     }
62
63     public String JavaDoc[] getXpaths() {
64         return XPATHS;
65     }
66
67     public DConfigBean JavaDoc getDConfigBean(DDBean JavaDoc bean) throws ConfigurationException JavaDoc {
68         if (getXpaths()[0].equals(bean.getXpath())) {
69             return connectionDefinitionDConfigBean;
70         }
71         return null;
72     }
73
74     public void fromXML(InputStream JavaDoc inputStream) throws XmlException, IOException JavaDoc {
75         super.fromXML(inputStream);
76         //TODO this is so totally wrong...
77
replaceConnectionDefinitionDConfigBean(getConnectorDocument().getConnector().getResourceadapterArray()[0].getOutboundResourceadapter().getConnectionDefinitionArray(0));
78     }
79
80     protected SchemaTypeLoader getSchemaTypeLoader() {
81         return ResourceAdapterDConfigRoot.SCHEMA_TYPE_LOADER;
82     }
83 }
84
Popular Tags