[jboss-cvs] JBossAS SVN: r66756 - in projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss: proxy and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Nov 6 02:29:41 EST 2007
Author: scott.stark at jboss.org
Date: 2007-11-06 02:29:41 -0500 (Tue, 06 Nov 2007)
New Revision: 66756
Added:
projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/
projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossEnterpriseBeansMetaDataProxy.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossMetaDataProxy.java
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java
Log:
Prototype of metadata repository based proxy
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java 2007-11-06 04:14:27 UTC (rev 66755)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java 2007-11-06 07:29:41 UTC (rev 66756)
@@ -179,7 +179,7 @@
* @param bean the standard bean metadata
* @return the corresponding jboss extenstion metadata
*/
- static JBossEnterpriseBeanMetaData newBean(EnterpriseBeanMetaData bean)
+ public static JBossEnterpriseBeanMetaData newBean(EnterpriseBeanMetaData bean)
{
JBossEnterpriseBeanMetaData jbean = null;
if(bean instanceof EntityBeanMetaData)
@@ -232,9 +232,9 @@
{
if (enterpriseBeansMetaData == null)
return null;
- return enterpriseBeansMetaData.getJBossMetaData();
+ return enterpriseBeansMetaData.getEjbJarMetaData();
}
-
+
/**
* Get the jbossMetaData.
*
@@ -1476,7 +1476,7 @@
jndiEnvironmentRefsGroup = new JBossEnvironmentRefsGroupMetaData();
Environment env = original != null ? original.getJndiEnvironmentRefsGroup() : null;
JBossEnvironmentRefsGroupMetaData jenv = null;
- ResourceManagersMetaData resourceMgrs = getJBossMetaData().getResourceManagers();
+ ResourceManagersMetaData resourceMgrs = this.getJBossMetaData().getResourceManagers();
if( override != null )
{
ResourceManagersMetaData resourceMgrsOverride = override.getJBossMetaData().getResourceManagers();
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java 2007-11-06 04:14:27 UTC (rev 66755)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java 2007-11-06 07:29:41 UTC (rev 66756)
@@ -54,7 +54,7 @@
public JBossEnterpriseBeansMetaData()
{
}
-
+
public JBossEnterpriseBeanMetaData createOverride(EnterpriseBeanMetaData data)
{
if (data == null)
@@ -69,21 +69,12 @@
else
throw new IllegalArgumentException("Unrecognised: " + data);
result.setEjbName(data.getEjbName());
+ result.setEnterpriseBeansMetaData(this);
result.merge(null, data);
return result;
}
/**
- * Get the jbossMetaData.
- *
- * @return the jbossMetaData.
- */
- JBossMetaData getJBossMetaData()
- {
- return jbossMetaData;
- }
-
- /**
* Set the jbossMetaData.
*
* @param jbossMetaData the jbossMetaData.
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossEnterpriseBeansMetaDataProxy.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossEnterpriseBeansMetaDataProxy.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossEnterpriseBeansMetaDataProxy.java 2007-11-06 07:29:41 UTC (rev 66756)
@@ -0,0 +1,129 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.metadata.ejb.jboss.proxy;
+
+import java.util.Collection;
+import java.util.Iterator;
+
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeansMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.spec.EjbJarMetaData;
+import org.jboss.metadata.ejb.spec.EnterpriseBeanMetaData;
+import org.jboss.metadata.spi.MetaData;
+import org.jboss.metadata.spi.repository.MetaDataRepository;
+import org.jboss.metadata.spi.scope.ScopeKey;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class JBossEnterpriseBeansMetaDataProxy extends JBossEnterpriseBeansMetaData
+{
+ private static final long serialVersionUID = 1;
+
+ private JBossMetaData jbossMetaData;
+ private JBossEnterpriseBeansMetaData delegate;
+ private MetaDataRepository repository;
+ private ScopeKey jarKey;
+
+ JBossEnterpriseBeansMetaDataProxy(JBossMetaData jbossMetaData,
+ JBossEnterpriseBeansMetaData delegate,
+ MetaDataRepository repository, ScopeKey jarKey)
+ {
+ this.jbossMetaData = jbossMetaData;
+ this.delegate = delegate;
+ if(this.delegate == null)
+ this.delegate = new JBossEnterpriseBeansMetaData();
+ this.repository = repository;
+ this.jarKey = jarKey;
+ }
+
+ public boolean contains(Object o)
+ {
+ // TODO
+ return delegate.contains(o);
+ }
+
+ public boolean containsAll(Collection<?> c)
+ {
+ // TODO
+ return delegate.containsAll(c);
+ }
+
+ public JBossEnterpriseBeanMetaData get(String ejbName)
+ {
+ JBossEnterpriseBeanMetaData bean = delegate.get(ejbName);
+ if(bean == null)
+ {
+ // Check the repository for spec generated metadata
+ MetaData metaData = repository.getMetaData(jarKey);
+ EjbJarMetaData jarMD = metaData.getMetaData(EjbJarMetaData.class);
+ if(jarMD != null)
+ {
+ EnterpriseBeanMetaData sbean = jarMD.getEnterpriseBean(ejbName);
+ bean = createOverride(sbean);
+ }
+ }
+ return bean;
+ }
+
+ public JBossMetaData getEjbJarMetaData()
+ {
+ return jbossMetaData;
+ }
+
+ public String getId()
+ {
+ return delegate.getId();
+ }
+
+ public boolean isEmpty()
+ {
+ return size() == 0;
+ }
+
+ public Iterator<JBossEnterpriseBeanMetaData> iterator()
+ {
+ // TODO
+ return delegate.iterator();
+ }
+
+ public int size()
+ {
+ // TODO
+ return delegate.size();
+ }
+
+ public Object[] toArray()
+ {
+ // TODO
+ return delegate.toArray();
+ }
+
+ public <T> T[] toArray(T[] a)
+ {
+ // TODO
+ return delegate.toArray(a);
+ }
+
+}
Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossEnterpriseBeansMetaDataProxy.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossMetaDataProxy.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossMetaDataProxy.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossMetaDataProxy.java 2007-11-06 07:29:41 UTC (rev 66756)
@@ -0,0 +1,215 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.metadata.ejb.jboss.proxy;
+
+import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
+import org.jboss.metadata.ejb.jboss.ContainerConfigurationMetaData;
+import org.jboss.metadata.ejb.jboss.ContainerConfigurationsMetaData;
+import org.jboss.metadata.ejb.jboss.InvokerProxyBindingMetaData;
+import org.jboss.metadata.ejb.jboss.InvokerProxyBindingsMetaData;
+import org.jboss.metadata.ejb.jboss.JBossAssemblyDescriptorMetaData;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeansMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.ResourceManagerMetaData;
+import org.jboss.metadata.ejb.jboss.ResourceManagersMetaData;
+import org.jboss.metadata.ejb.jboss.WebservicesMetaData;
+import org.jboss.metadata.ejb.spec.InterceptorsMetaData;
+import org.jboss.metadata.ejb.spec.RelationsMetaData;
+import org.jboss.metadata.javaee.spec.DescriptionGroupMetaData;
+import org.jboss.metadata.spi.repository.MetaDataRepository;
+import org.jboss.metadata.spi.scope.ScopeKey;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class JBossMetaDataProxy extends JBossMetaData
+{
+ private static final long serialVersionUID = 1;
+
+ private JBossMetaData delegate;
+ private MetaDataRepository repository;
+ private JBossEnterpriseBeansMetaDataProxy beans;
+ private ScopeKey jarKey;
+
+ public JBossMetaDataProxy(JBossMetaData delegate, MetaDataRepository repository,
+ ScopeKey jarKey)
+ {
+ this.delegate = delegate;
+ this.repository = repository;
+ beans = new JBossEnterpriseBeansMetaDataProxy(this,
+ delegate.getEnterpriseBeans(), repository, jarKey);
+ }
+
+ public JBossAssemblyDescriptorMetaData getAssemblyDescriptor()
+ {
+ return delegate.getAssemblyDescriptor();
+ }
+
+ public ContainerConfigurationMetaData getContainerConfiguration(String name)
+ {
+ return delegate.getContainerConfiguration(name);
+ }
+
+ public ContainerConfigurationsMetaData getContainerConfigurations()
+ {
+ return delegate.getContainerConfigurations();
+ }
+
+ public DescriptionGroupMetaData getDescriptionGroup()
+ {
+ return delegate.getDescriptionGroup();
+ }
+
+ public String getDtdPublicId()
+ {
+ return delegate.getDtdPublicId();
+ }
+
+ public String getDtdSystemId()
+ {
+ return delegate.getDtdSystemId();
+ }
+
+ public String getEjbClientJar()
+ {
+ return delegate.getEjbClientJar();
+ }
+
+ public JBossEnterpriseBeanMetaData getEnterpriseBean(String ejbName)
+ {
+ return beans.get(ejbName);
+ }
+
+ public JBossEnterpriseBeansMetaData getEnterpriseBeans()
+ {
+ return beans;
+ }
+
+ public String getId()
+ {
+ return delegate.getId();
+ }
+
+ public InterceptorsMetaData getInterceptors()
+ {
+ return delegate.getInterceptors();
+ }
+
+ public InvokerProxyBindingMetaData getInvokerProxyBinding(String name)
+ {
+ return delegate.getInvokerProxyBinding(name);
+ }
+
+ public InvokerProxyBindingsMetaData getInvokerProxyBindings()
+ {
+ return delegate.getInvokerProxyBindings();
+ }
+
+ public String getJaccContextID()
+ {
+ return delegate.getJaccContextID();
+ }
+
+ public String getJmxName()
+ {
+ return delegate.getJmxName();
+ }
+
+ public LoaderRepositoryMetaData getLoaderRepository()
+ {
+ return delegate.getLoaderRepository();
+ }
+
+ public RelationsMetaData getRelationships()
+ {
+ return delegate.getRelationships();
+ }
+
+ public ResourceManagerMetaData getResourceManager(String name)
+ {
+ return delegate.getResourceManager(name);
+ }
+
+ public ResourceManagersMetaData getResourceManagers()
+ {
+ return delegate.getResourceManagers();
+ }
+
+ public String getSecurityDomain()
+ {
+ return delegate.getSecurityDomain();
+ }
+
+ public String getUnauthenticatedPrincipal()
+ {
+ return delegate.getUnauthenticatedPrincipal();
+ }
+
+ public String getVersion()
+ {
+ return delegate.getVersion();
+ }
+
+ public WebservicesMetaData getWebservices()
+ {
+ return delegate.getWebservices();
+ }
+
+ public int hashCode()
+ {
+ return delegate.hashCode();
+ }
+
+ public boolean isEJB1x()
+ {
+ return delegate.isEJB1x();
+ }
+
+ public boolean isEJB21()
+ {
+ return delegate.isEJB21();
+ }
+
+ public boolean isEJB2x()
+ {
+ return delegate.isEJB2x();
+ }
+
+ public boolean isEJB3x()
+ {
+ return delegate.isEJB3x();
+ }
+
+ public boolean isExceptionOnRollback()
+ {
+ return delegate.isExceptionOnRollback();
+ }
+
+ public boolean isExcludeMissingMethods()
+ {
+ return delegate.isExcludeMissingMethods();
+ }
+
+
+}
Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/proxy/JBossMetaDataProxy.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
More information about the jboss-cvs-commits
mailing list