dain        2004/04/03 20:49:09

  Modified:    modules/core/src/java/org/openejb
                        AbstractContainerBuilder.java
                        AbstractInterceptorBuilder.java
                        EJBInstanceFactoryImpl.java
  Added:       modules/core/src/java/org/openejb ContainerBuilder.java
  Log:

  Added deployment support for Stateful and BMP beans
  Fixed more serialization problems
  Added ContainerBuilder interface
  
  Revision  Changes    Path
  1.3       +11 -3     
openejb/modules/core/src/java/org/openejb/AbstractContainerBuilder.java
  
  Index: AbstractContainerBuilder.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/AbstractContainerBuilder.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractContainerBuilder.java     1 Apr 2004 22:36:51 -0000       1.2
  +++ AbstractContainerBuilder.java     4 Apr 2004 01:49:09 -0000       1.3
  @@ -74,7 +74,7 @@
    *
    * @version $Revision$ $Date$
    */
  -public abstract class AbstractContainerBuilder {
  +public abstract class AbstractContainerBuilder implements ContainerBuilder {
       private ClassLoader classLoader;
       private Object containerId;
       private String ejbName;
  @@ -226,7 +226,15 @@
   
       protected abstract int getEJBComponentType();
   
  -    public abstract EJBContainer createContainer() throws Exception;
  +    public EJBContainer createContainer() throws Exception {
  +        return (EJBContainer) buildIt(true);
  +    }
  +
  +    public GBeanMBean createConfiguration() throws Exception {
  +        return (GBeanMBean) buildIt(false);
  +    }
  +
  +    protected abstract Object buildIt(boolean buildContainer) throws Exception;
   
       protected InterceptorBuilder initializeInterceptorBuilder(InterceptorBuilder 
interceptorBuilder, InterfaceMethodSignature[] signatures, VirtualOperation[] vtable) {
           interceptorBuilder.setContainerId(containerId);
  
  
  
  1.2       +2 -2      
openejb/modules/core/src/java/org/openejb/AbstractInterceptorBuilder.java
  
  Index: AbstractInterceptorBuilder.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/AbstractInterceptorBuilder.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AbstractInterceptorBuilder.java   21 Mar 2004 21:26:34 -0000      1.1
  +++ AbstractInterceptorBuilder.java   4 Apr 2004 01:49:09 -0000       1.2
  @@ -80,7 +80,7 @@
       protected transient TransactionManager transactionManager;
       protected transient TrackedConnectionAssociator trackedConnectionAssociator;
       protected transient InstancePool instancePool;
  -    protected transient InstanceCache instanceCache;
  +    protected InstanceCache instanceCache;
       protected InstanceFactory instanceFactory;
   
   
  
  
  
  1.3       +2 -3      
openejb/modules/core/src/java/org/openejb/EJBInstanceFactoryImpl.java
  
  Index: EJBInstanceFactoryImpl.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/EJBInstanceFactoryImpl.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- EJBInstanceFactoryImpl.java       3 Apr 2004 22:20:10 -0000       1.2
  +++ EJBInstanceFactoryImpl.java       4 Apr 2004 01:49:09 -0000       1.3
  @@ -47,12 +47,11 @@
    */
   package org.openejb;
   
  -import java.lang.reflect.InvocationTargetException;
   import java.io.Serializable;
  +import java.lang.reflect.InvocationTargetException;
   import javax.ejb.EnterpriseBean;
   
   import net.sf.cglib.reflect.FastClass;
  -import org.openejb.transaction.ContainerPolicy;
   
   /**
    *
  
  
  
  1.1                  openejb/modules/core/src/java/org/openejb/ContainerBuilder.java
  
  Index: ContainerBuilder.java
  ===================================================================
  /**
   *
   * Copyright 2004 The Apache Software Foundation
   *
   *  Licensed under the Apache License, Version 2.0 (the "License");
   *  you may not use this file except in compliance with the License.
   *  You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   *  Unless required by applicable law or agreed to in writing, software
   *  distributed under the License is distributed on an "AS IS" BASIS,
   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   *  See the License for the specific language governing permissions and
   *  limitations under the License.
   */
  package org.openejb;
  
  import java.util.Set;
  import javax.security.auth.Subject;
  import javax.transaction.TransactionManager;
  
  import org.apache.geronimo.naming.java.ReadOnlyContext;
  import 
org.apache.geronimo.connector.outbound.connectiontracking.TrackedConnectionAssociator;
  import org.apache.geronimo.gbean.jmx.GBeanMBean;
  
  import org.openejb.transaction.EJBUserTransaction;
  import org.openejb.deployment.TransactionPolicySource;
  
  /**
   * 
   * 
   * @version $Revision: 1.1 $ $Date: 2004/04/04 01:49:09 $
   */
  public interface ContainerBuilder {
      ClassLoader getClassLoader();
  
      void setClassLoader(ClassLoader classLoader);
  
      Object getContainerId();
  
      void setContainerId(Object containerId);
  
      String getEJBName();
  
      void setEJBName(String ejbName);
  
      String getBeanClassName();
  
      void setBeanClassName(String beanClassName);
  
      String getHomeInterfaceName();
  
      void setHomeInterfaceName(String homeInterfaceName);
  
      String getRemoteInterfaceName();
  
      void setRemoteInterfaceName(String remoteInterfaceName);
  
      String getLocalHomeInterfaceName();
  
      void setLocalHomeInterfaceName(String localHomeInterfaceName);
  
      String getLocalInterfaceName();
  
      void setLocalInterfaceName(String localInterfaceName);
  
      String getPrimaryKeyClassName();
  
      void setPrimaryKeyClassName(String primaryKeyClassName);
  
      Subject getRunAs();
  
      void setRunAs(Subject runAs);
  
      ReadOnlyContext getComponentContext();
  
      void setComponentContext(ReadOnlyContext componentContext);
  
      Set getUnshareableResources();
  
      void setUnshareableResources(Set unshareableResources);
  
      EJBUserTransaction getUserTransaction();
  
      void setUserTransaction(EJBUserTransaction userTransaction);
  
      TransactionPolicySource getTransactionPolicySource();
  
      void setTransactionPolicySource(TransactionPolicySource transactionPolicySource);
  
      TransactionManager getTransactionManager();
  
      void setTransactionManager(TransactionManager transactionManager);
  
      TrackedConnectionAssociator getTrackedConnectionAssociator();
  
      void setTrackedConnectionAssociator(TrackedConnectionAssociator 
trackedConnectionAssociator);
  
      EJBContainer createContainer() throws Exception;
  
      GBeanMBean createConfiguration() throws Exception;
  }
  
  
  

Reply via email to