geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ammul...@apache.org
Subject svn commit: r202005 - /geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/
Date Mon, 27 Jun 2005 16:20:21 GMT
Author: ammulder
Date: Mon Jun 27 09:20:18 2005
New Revision: 202005

URL: http://svn.apache.org/viewcvs?rev=202005&view=rev
Log:
Update the connector builder a bit.  The DConfigBeans are still not really
  accurate, but at least the look and work a little better.  :)

Added:
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionDConfigBeanBeanInfo.java
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstanceBeanInfo.java
Modified:
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConfigPropertySettings.java
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstance.java
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
    geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigRoot.java

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConfigPropertySettings.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConfigPropertySettings.java?rev=202005&r1=202004&r2=202005&view=diff
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConfigPropertySettings.java
(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConfigPropertySettings.java
Mon Jun 27 09:20:18 2005
@@ -134,4 +134,8 @@
         getConfigPropertySetting().setStringValue(configPropertyValue);
         pcs.firePropertyChange("configPropertyValue", old, configPropertyValue);
     }
+
+    public String toString() {
+        return "Property "+getConfigPropertyName();
+    }
 }

Added: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionDConfigBeanBeanInfo.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionDConfigBeanBeanInfo.java?rev=202005&view=auto
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionDConfigBeanBeanInfo.java
(added)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionDConfigBeanBeanInfo.java
Mon Jun 27 09:20:18 2005
@@ -0,0 +1,137 @@
+package org.apache.geronimo.connector.deployment.dconfigbean;
+
+import java.beans.*;
+import java.awt.*;
+
+/**
+ * @version $Revision: 1.0$
+ */
+public class ConnectionDefinitionDConfigBeanBeanInfo implements BeanInfo {
+    /**
+     * A bean may have a "default" event that is the event that will
+     * mostly commonly be used by humans when using the bean.
+     *
+     * @return Index of default event in the EventSetDescriptor array
+     *         returned by getEventSetDescriptors.
+     *         <P>	Returns -1 if there is no default event.
+     */
+    public int getDefaultEventIndex() {
+        return -1;
+    }
+
+    /**
+     * A bean may have a "default" property that is the property that will
+     * mostly commonly be initially chosen for update by human's who are
+     * customizing the bean.
+     *
+     * @return Index of default property in the PropertyDescriptor array
+     *         returned by getPropertyDescriptors.
+     *         <P>	Returns -1 if there is no default property.
+     */
+    public int getDefaultPropertyIndex() {
+        return -1;
+    }
+
+    /**
+     * This method returns an image object that can be used to
+     * represent the bean in toolboxes, toolbars, etc.   Icon images
+     * will typically be GIFs, but may in future include other formats.
+     * <p/>
+     * Beans aren't required to provide icons and may return null from
+     * this method.
+     * <p/>
+     * There are four possible flavors of icons (16x16 color,
+     * 32x32 color, 16x16 mono, 32x32 mono).  If a bean choses to only
+     * support a single icon we recommend supporting 16x16 color.
+     * <p/>
+     * We recommend that icons have a "transparent" background
+     * so they can be rendered onto an existing background.
+     *
+     * @param iconKind The kind of icon requested.  This should be
+     *                 one of the constant values ICON_COLOR_16x16, ICON_COLOR_32x32,
+     *                 ICON_MONO_16x16, or ICON_MONO_32x32.
+     * @return An image object representing the requested icon.  May
+     *         return null if no suitable icon is available.
+     */
+    public Image getIcon(int iconKind) {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>BeanDescriptor</code>.
+     *
+     * @return A BeanDescriptor providing overall information about
+     *         the bean, such as its displayName, its customizer, etc.  May
+     *         return null if the information should be obtained by automatic
+     *         analysis.
+     */
+    public BeanDescriptor getBeanDescriptor() {
+        BeanDescriptor bd = new BeanDescriptor(ConnectionDefinitionDConfigBean.class);
+        bd.setDisplayName("Connection Definition");
+        bd.setShortDescription("Holds a list of connection instances available for this connector.");
+        return bd;
+    }
+
+    /**
+     * This method allows a BeanInfo object to return an arbitrary collection
+     * of other BeanInfo objects that provide additional information on the
+     * current bean.
+     * <P>
+     * If there are conflicts or overlaps between the information provided
+     * by different BeanInfo objects, then the current BeanInfo takes precedence
+     * over the getAdditionalBeanInfo objects, and later elements in the array
+     * take precedence over earlier ones.
+     *
+     * @return an array of BeanInfo objects.  May return null.
+     */
+    public BeanInfo[] getAdditionalBeanInfo() {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>EventSetDescriptor</code>s.
+     *
+     * @return An array of EventSetDescriptors describing the kinds of
+     *         events fired by this bean.  May return null if the information
+     *         should be obtained by automatic analysis.
+     */
+    public EventSetDescriptor[] getEventSetDescriptors() {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>MethodDescriptor</code>s.
+     *
+     * @return An array of MethodDescriptors describing the externally
+     *         visible methods supported by this bean.  May return null if
+     *         the information should be obtained by automatic analysis.
+     */
+    public MethodDescriptor[] getMethodDescriptors() {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>PropertyDescriptor</code>s.
+     *
+     * @return An array of PropertyDescriptors describing the editable
+     *         properties supported by this bean.  May return null if the
+     *         information should be obtained by automatic analysis.
+     *         <p/>
+     *         If a property is indexed, then its entry in the result array will
+     *         belong to the IndexedPropertyDescriptor subclass of PropertyDescriptor.
+     *         A client of getPropertyDescriptors can use "instanceof" to check
+     *         if a given PropertyDescriptor is an IndexedPropertyDescriptor.
+     */
+    public PropertyDescriptor[] getPropertyDescriptors() {
+        try {
+            PropertyDescriptor instances = new PropertyDescriptor("connectionDefinitionInstance",
ConnectionDefinitionDConfigBean.class);
+            instances.setDisplayName("Geronimo Connections");
+            instances.setShortDescription("Geronimo allows several connection instances to
be configured for the same connection type.  For example, there may be connection instances
pointing to several databases for a single JDBC instance of a connector.");
+            return new PropertyDescriptor[] {
+                instances
+            };
+        } catch (IntrospectionException e) {
+            throw new RuntimeException("Unable to parse bean", e);
+        }
+    }
+}

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstance.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstance.java?rev=202005&r1=202004&r2=202005&view=diff
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstance.java
(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstance.java
Mon Jun 27 09:20:18 2005
@@ -209,4 +209,7 @@
         pcs.firePropertyChange("realmBridgeName", old, realmBridgeName);
     }
 
+    public String toString() {
+        return "Connection "+getName();
+    }
 }

Added: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstanceBeanInfo.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstanceBeanInfo.java?rev=202005&view=auto
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstanceBeanInfo.java
(added)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ConnectionDefinitionInstanceBeanInfo.java
Mon Jun 27 09:20:18 2005
@@ -0,0 +1,143 @@
+package org.apache.geronimo.connector.deployment.dconfigbean;
+
+import java.beans.*;
+import java.awt.*;
+
+/**
+ * @version $Revision: 1.0$
+ */
+public class ConnectionDefinitionInstanceBeanInfo implements BeanInfo {
+    /**
+     * A bean may have a "default" event that is the event that will
+     * mostly commonly be used by humans when using the bean.
+     *
+     * @return Index of default event in the EventSetDescriptor array
+     *         returned by getEventSetDescriptors.
+     *         <P>	Returns -1 if there is no default event.
+     */
+    public int getDefaultEventIndex() {
+        return -1;
+    }
+
+    /**
+     * A bean may have a "default" property that is the property that will
+     * mostly commonly be initially chosen for update by human's who are
+     * customizing the bean.
+     *
+     * @return Index of default property in the PropertyDescriptor array
+     *         returned by getPropertyDescriptors.
+     *         <P>	Returns -1 if there is no default property.
+     */
+    public int getDefaultPropertyIndex() {
+        return -1;
+    }
+
+    /**
+     * This method returns an image object that can be used to
+     * represent the bean in toolboxes, toolbars, etc.   Icon images
+     * will typically be GIFs, but may in future include other formats.
+     * <p/>
+     * Beans aren't required to provide icons and may return null from
+     * this method.
+     * <p/>
+     * There are four possible flavors of icons (16x16 color,
+     * 32x32 color, 16x16 mono, 32x32 mono).  If a bean choses to only
+     * support a single icon we recommend supporting 16x16 color.
+     * <p/>
+     * We recommend that icons have a "transparent" background
+     * so they can be rendered onto an existing background.
+     *
+     * @param iconKind The kind of icon requested.  This should be
+     *                 one of the constant values ICON_COLOR_16x16, ICON_COLOR_32x32,
+     *                 ICON_MONO_16x16, or ICON_MONO_32x32.
+     * @return An image object representing the requested icon.  May
+     *         return null if no suitable icon is available.
+     */
+    public Image getIcon(int iconKind) {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>BeanDescriptor</code>.
+     *
+     * @return A BeanDescriptor providing overall information about
+     *         the bean, such as its displayName, its customizer, etc.  May
+     *         return null if the information should be obtained by automatic
+     *         analysis.
+     */
+    public BeanDescriptor getBeanDescriptor() {
+        BeanDescriptor bd = new BeanDescriptor(ConnectionDefinitionInstance.class);
+        bd.setDisplayName("Geronimo Connection Configurations");
+        bd.setShortDescription("The Resource Adapter defines what type of connections may
be made (e.g. to a database, or to JMS).  These entries configure a specific connection instance
(to a specific database or JMS server).  This is done primarily by setting appropriate config
properties.");
+        return bd;
+    }
+
+    /**
+     * This method allows a BeanInfo object to return an arbitrary collection
+     * of other BeanInfo objects that provide additional information on the
+     * current bean.
+     * <P>
+     * If there are conflicts or overlaps between the information provided
+     * by different BeanInfo objects, then the current BeanInfo takes precedence
+     * over the getAdditionalBeanInfo objects, and later elements in the array
+     * take precedence over earlier ones.
+     *
+     * @return an array of BeanInfo objects.  May return null.
+     */
+    public BeanInfo[] getAdditionalBeanInfo() {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>EventSetDescriptor</code>s.
+     *
+     * @return An array of EventSetDescriptors describing the kinds of
+     *         events fired by this bean.  May return null if the information
+     *         should be obtained by automatic analysis.
+     */
+    public EventSetDescriptor[] getEventSetDescriptors() {
+        return null;
+    }
+
+    /**
+     * Gets the beans <code>MethodDescriptor</code>s.
+     *
+     * @return An array of MethodDescriptors describing the externally
+     *         visible methods supported by this bean.  May return null if
+     *         the information should be obtained by automatic analysis.
+     */
+    public MethodDescriptor[] getMethodDescriptors() {
+        return new MethodDescriptor[0];
+    }
+
+    /**
+     * Gets the beans <code>PropertyDescriptor</code>s.
+     *
+     * @return An array of PropertyDescriptors describing the editable
+     *         properties supported by this bean.  May return null if the
+     *         information should be obtained by automatic analysis.
+     *         <p/>
+     *         If a property is indexed, then its entry in the result array will
+     *         belong to the IndexedPropertyDescriptor subclass of PropertyDescriptor.
+     *         A client of getPropertyDescriptors can use "instanceof" to check
+     *         if a given PropertyDescriptor is an IndexedPropertyDescriptor.
+     */
+    public PropertyDescriptor[] getPropertyDescriptors() {
+        try {
+            PropertyDescriptor name = new PropertyDescriptor("name", ConnectionDefinitionInstance.class);
+            name.setDisplayName("Connection Name");
+            name.setShortDescription("A name that identifies this connection.  It will be
used by application resource references to map to this connection.");
+            PropertyDescriptor jndiName = new PropertyDescriptor("globalJNDIName", ConnectionDefinitionInstance.class);
+            jndiName.setDisplayName("Global JNDI Name");
+            jndiName.setShortDescription("Where to register this connection in the global
JNDI tree.  This is only necessary for non-J2EE application clients; it is not used for nornal
resource references.");
+            PropertyDescriptor configs = new PropertyDescriptor("configProperty", ConnectionDefinitionInstance.class,
"getConfigProperty", null);
+            configs.setDisplayName("Configuration Properties");
+            configs.setShortDescription("The configuration properties that point this connection
instance to a particular destination (database, JMS server, etc.).");
+            return new PropertyDescriptor[]{
+                name, jndiName, configs
+            };
+        } catch (IntrospectionException e) {
+            throw new RuntimeException("Unable to configure bean properties", e);
+        }
+    }
+}

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java?rev=202005&r1=202004&r2=202005&view=diff
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
Mon Jun 27 09:20:18 2005
@@ -151,10 +151,19 @@
     }
 
     public String getWorkManager() {
+        if(getResourceadapterInstance() == null || getResourceadapterInstance().getWorkmanager()
== null) {
+            return null;
+        }
         return getResourceadapterInstance().getWorkmanager().getGbeanLink();
     }
 
     public void setWorkManager(String workManager) {
+        if(getResourceadapterInstance() == null) {
+            getResourceadapter().addNewResourceadapterInstance();
+        }
+        if(getResourceadapterInstance().getWorkmanager() == null) {
+            getResourceadapterInstance().addNewWorkmanager();
+        }
         getResourceadapterInstance().getWorkmanager().setGbeanLink(workManager);
     }
 

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigRoot.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigRoot.java?rev=202005&r1=202004&r2=202005&view=diff
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigRoot.java
(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigRoot.java
Mon Jun 27 09:20:18 2005
@@ -32,6 +32,7 @@
 import org.apache.xmlbeans.SchemaTypeLoader;
 import org.apache.xmlbeans.XmlBeans;
 import org.apache.xmlbeans.XmlException;
+import org.apache.xmlbeans.XmlObject;
 
 /**
  *
@@ -52,15 +53,35 @@
     private ResourceAdapterDConfigBean resourceAdapterDConfigBean;
 
     public ResourceAdapterDConfigRoot(DDBeanRoot ddBean) {
-        super(ddBean, GerConnectorDocument.Factory.newInstance());
-        GerResourceadapterType resourceAdapter = getConnectorDocument().addNewConnector().addNewResourceadapter();
-        getConnectorDocument().getConnector().setVersion(GerVersionType.X_1_5);
-        replaceResourceAdapterDConfigBean(resourceAdapter);
+        super(ddBean, loadDefaultData(ddBean));
+        replaceResourceAdapterDConfigBean(getConnectorDocument().getConnector().getResourceadapterArray()[0]);
+    }
+
+    private static XmlObject loadDefaultData(DDBeanRoot root) {
+        InputStream in = root.getDeployableObject().getEntry("META-INF/geronimo-ra.xml");
+        if(in == null) {
+            GerConnectorDocument doc = GerConnectorDocument.Factory.newInstance();
+            doc.addNewConnector().addNewResourceadapter();
+            doc.getConnector().setVersion(GerVersionType.X_1_5);
+            return doc;
+        } else {
+            try {
+                XmlObject result =  GerConnectorDocument.Factory.parse(in);
+                in.close();
+                return result;
+            } catch (XmlException e) {
+                throw new RuntimeException("Unable to load default Geronimo RA data", e);
+            } catch (IOException e) {
+                throw new RuntimeException("Unable to load default Geronimo RA data", e);
+            }
+        }
     }
 
     private void replaceResourceAdapterDConfigBean(GerResourceadapterType resourceAdapter)
{
         DDBean ddBean = getDDBean();
-        DDBean childDDBean = ddBean.getChildBean(getXpaths()[0])[0];
+        String path = getXpaths()[0];
+        System.out.println("********** Searching XPath "+path+" -- "+ddBean.getChildBean(path));
+        DDBean childDDBean = ddBean.getChildBean(path)[0];
         resourceAdapterDConfigBean = new ResourceAdapterDConfigBean(childDDBean, resourceAdapter);
     }
 



Mime
View raw message