[webbeans-commits] Webbeans SVN: r1659 - in ri/trunk: webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap and 7 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Feb 23 13:34:33 EST 2009


Author: pete.muir at jboss.org
Date: 2009-02-23 13:34:32 -0500 (Mon, 23 Feb 2009)
New Revision: 1659

Added:
   ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/
   ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/api/
   ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java
Removed:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/BeanMap.java
Modified:
   ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/Bootstrap.java
   ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/helpers/AbstractBootstrap.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractThreadLocalMapContext.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/AbstractBeanMap.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/SimpleBeanMap.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/mock/MockLifecycle.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/AbstractLifecycle.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle2.java
Log:
Move BeanMap -> SPI

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractMapContext.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -24,7 +24,7 @@
 import javax.context.CreationalContext;
 import javax.inject.manager.Bean;
 
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
 
@@ -112,7 +112,7 @@
    public void destroy()
    {
       log.trace("Destroying context");
-      for (Contextual<? extends Object> bean : getBeanMap().getContents())
+      for (Contextual<? extends Object> bean : getBeanMap().getBeans())
       {
          destroy(bean);
       }
@@ -124,6 +124,6 @@
     * 
     * @return The actual bean map
     */
-   protected abstract BeanMap getBeanMap();
+   protected abstract BeanStore getBeanMap();
 
 }

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractThreadLocalMapContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractThreadLocalMapContext.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/AbstractThreadLocalMapContext.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -2,17 +2,17 @@
 
 import java.lang.annotation.Annotation;
 
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 
 public abstract class AbstractThreadLocalMapContext extends AbstractMapContext
 {
    
-   private final ThreadLocal<BeanMap> beanMap;
+   private final ThreadLocal<BeanStore> beanStore;
 
    public AbstractThreadLocalMapContext(Class<? extends Annotation> scopeType)
    {
       super(scopeType);
-      this.beanMap = new ThreadLocal<BeanMap>();
+      this.beanStore = new ThreadLocal<BeanStore>();
    }
 
    /**
@@ -22,19 +22,19 @@
     * @see org.jboss.webbeans.context.AbstractContext#getNewEnterpriseBeanMap()
     */
    @Override
-   public BeanMap getBeanMap()
+   public BeanStore getBeanMap()
    {
-      return beanMap.get();
+      return beanStore.get();
    }
 
    /**
     * Sets the bean map
     * 
-    * @param beanMap The bean map
+    * @param beanStore The bean map
     */
-   public void setBeanMap(BeanMap beanMap)
+   public void setBeanMap(BeanStore beanStore)
    {
-      this.beanMap.set(beanMap);
+      this.beanStore.set(beanStore);
    }
    
 }
\ No newline at end of file

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/ApplicationContext.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/ApplicationContext.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -21,7 +21,7 @@
 
 import javax.context.ApplicationScoped;
 
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 
 /**
  * The Application context
@@ -42,7 +42,7 @@
    }
 
    // The beans
-   private BeanMap beanMap;
+   private BeanStore beanStore;
    // Is the context active?
    private AtomicBoolean active;
 
@@ -61,9 +61,9 @@
     * @return The bean map
     */
    @Override
-   public BeanMap getBeanMap()
+   public BeanStore getBeanMap()
    {
-      return this.beanMap;
+      return this.beanStore;
    }
 
    /**
@@ -71,9 +71,9 @@
     * 
     * @param applicationBeanMap The bean map
     */
-   public void setBeanMap(BeanMap applicationBeanMap)
+   public void setBeanMap(BeanStore applicationBeanMap)
    {
-      this.beanMap = applicationBeanMap;
+      this.beanStore = applicationBeanMap;
    }
 
    /**

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/AbstractBeanMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/AbstractBeanMap.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/AbstractBeanMap.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -24,6 +24,7 @@
 import javax.context.Contextual;
 
 import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
 import org.jboss.webbeans.util.EnumerationIterable;
@@ -35,7 +36,7 @@
  * @author Nicklas Karlsson
  * 
  */
-public abstract class AbstractBeanMap implements BeanMap
+public abstract class AbstractBeanMap implements BeanStore
 {
    // The log provider
    private static LogProvider log = Logging.getLogProvider(AbstractBeanMap.class);
@@ -87,7 +88,7 @@
     * 
     * @return The beans
     */
-   public Iterable<Contextual<? extends Object>> getContents()
+   public Iterable<Contextual<? extends Object>> getBeans()
    {
       List<Contextual<?>> contextuals = new ArrayList<Contextual<?>>();
       BeanMapAdaptor adaptor = getBeanMapAdaptor();
@@ -175,6 +176,6 @@
    @Override
    public String toString()
    {
-      return "holding " + Names.count(getContents()) + " instances";
+      return "holding " + Names.count(getBeans()) + " instances";
    }
 }

Deleted: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/BeanMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/BeanMap.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/BeanMap.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -1,70 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, 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.
- *
- * 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.jboss.webbeans.context.beanmap;
-
-import javax.context.Contextual;
-
-
-/**
- * Interface for different implementations of Bean to Bean instance storage.
- * Used primarily by the contexts.
- * 
- * @author Nicklas Karlsson
- * 
- * @see org.jboss.webbeans.context.beanmap.SimpleBeanMap
- * @see org.jboss.webbeans.servlet.HttpSessionBeanMap
- */
-public interface BeanMap
-{
-   /**
-    * Gets an instance of a bean from the storage.
-    * 
-    * @param bean The bean whose instance to return
-    * @return The instance. Null if not found
-    */
-   public abstract <T extends Object> T get(Contextual<? extends T> bean);
-
-   /**
-    * Removes an instance of a bean from the storage
-    * 
-    * @param bean The bean whose instance to remove
-    * @return The removed instance. Null if not found in storage.
-    */
-   public abstract <T extends Object> T remove(Contextual<? extends T> bean);
-
-   /**
-    * Clears the storage of any bean instances
-    */
-   public abstract void clear();
-
-   /**
-    * Returns an Iterable over the current contents in the storage
-    * 
-    * @return An Iterable over the keys in the storage
-    */
-   public abstract Iterable<Contextual<? extends Object>> getContents();
-
-   /**
-    * Adds a bean instance to the storage
-    * 
-    * @param bean The bean type. Used as key
-    * @param instance The instance to add
-    * @return The instance added
-    */
-   public abstract <T> void put(Contextual<? extends T> bean, T instance);
-}
\ No newline at end of file

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/SimpleBeanMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/SimpleBeanMap.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/SimpleBeanMap.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -24,6 +24,7 @@
 import javax.context.Contextual;
 import javax.inject.manager.Bean;
 
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
 
@@ -34,7 +35,7 @@
  * 
  * @author Nicklas Karlsson
  */
-public class SimpleBeanMap extends ForwardingMap<Contextual<? extends Object>, Object> implements BeanMap
+public class SimpleBeanMap extends ForwardingMap<Contextual<? extends Object>, Object> implements BeanStore
 {
    private static LogProvider log = Logging.getLogProvider(SimpleBeanMap.class);
    
@@ -55,7 +56,7 @@
     * @param The bean to look for
     * @return An instance, if found
     * 
-    * @see org.jboss.webbeans.context.beanmap.BeanMap#get(Bean)
+    * @see org.jboss.webbeans.context.api.BeanStore#get(Bean)
     */
    public <T extends Object> T get(Contextual<? extends T> bean)
    {
@@ -82,7 +83,7 @@
     * @param bean the bean to remove
     * @return The instance removed
     *
-    * @see org.jboss.webbeans.context.beanmap.BeanMap#remove(Bean)
+    * @see org.jboss.webbeans.context.api.BeanStore#remove(Bean)
     */
    public <T extends Object> T remove(Contextual<? extends T> bean)
    {
@@ -95,7 +96,7 @@
    /**
     * Clears the map
     * 
-    * @see org.jboss.webbeans.context.beanmap.BeanMap#clear()
+    * @see org.jboss.webbeans.context.api.BeanStore#clear()
     */
    public void clear()
    {
@@ -108,9 +109,9 @@
     * 
     * @return The beans present
     * 
-    * @see org.jboss.webbeans.context.beanmap.BeanMap#getContents()
+    * @see org.jboss.webbeans.context.api.BeanStore#getBeans()
     */
-   public Set<Contextual<? extends Object>> getContents()
+   public Set<Contextual<? extends Object>> getBeans()
    {
       return delegate.keySet();
    }
@@ -121,7 +122,7 @@
     * @param bean The bean
     * @param instance the instance
     * 
-    * @see org.jboss.webbeans.context.beanmap.BeanMap#put(Bean, Object)
+    * @see org.jboss.webbeans.context.api.BeanStore#put(Bean, Object)
     */
    public <T> void put(Contextual<? extends T> bean, T instance)
    {

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/mock/MockLifecycle.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/mock/MockLifecycle.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/mock/MockLifecycle.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -19,7 +19,7 @@
 
 
 import org.jboss.webbeans.bootstrap.WebBeansBootstrap;
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.context.beanmap.SimpleBeanMap;
 import org.jboss.webbeans.ejb.spi.EjbResolver;
 import org.jboss.webbeans.resources.spi.ResourceLoader;
@@ -33,9 +33,9 @@
    
    private final WebBeansBootstrap bootstrap;
    private final MockWebBeanDiscovery webBeanDiscovery;
-   private BeanMap applicationBeanMap = new SimpleBeanMap();
-   private BeanMap sessionBeanMap = new SimpleBeanMap();
-   private BeanMap requestBeanMap = new SimpleBeanMap();
+   private BeanStore applicationBeanMap = new SimpleBeanMap();
+   private BeanStore sessionBeanMap = new SimpleBeanMap();
+   private BeanStore requestBeanMap = new SimpleBeanMap();
    
    public MockLifecycle()
    {
@@ -76,7 +76,7 @@
    public void beginApplication()
    {
       super.beginApplication("Mock", applicationBeanMap);
-      BeanMap requestBeanMap = new SimpleBeanMap();
+      BeanStore requestBeanMap = new SimpleBeanMap();
       super.beginDeploy(requestBeanMap);
       bootstrap.setEjbDiscovery(new MockEjbDiscovery(webBeanDiscovery.discoverWebBeanClasses()));
       bootstrap.boot();

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/AbstractLifecycle.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/AbstractLifecycle.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/AbstractLifecycle.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -7,7 +7,7 @@
 import org.jboss.webbeans.context.DependentContext;
 import org.jboss.webbeans.context.RequestContext;
 import org.jboss.webbeans.context.SessionContext;
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.conversation.ConversationManager;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
@@ -50,7 +50,7 @@
       manager.addContext(ConversationContext.create());
    }
 
-   protected void beginApplication(String id, BeanMap applicationBeanMap)
+   protected void beginApplication(String id, BeanStore applicationBeanMap)
    {
       log.trace("Starting application " + id);
       ApplicationContext.INSTANCE.setBeanMap(applicationBeanMap);
@@ -58,19 +58,19 @@
 
    }
 
-   protected void beginDeploy(BeanMap requestBeanMap)
+   protected void beginDeploy(BeanStore requestBeanMap)
    {
       RequestContext.INSTANCE.setBeanMap(requestBeanMap);
       RequestContext.INSTANCE.setActive(true);
    }
 
-   protected void endDeploy(BeanMap requestBeanMap)
+   protected void endDeploy(BeanStore requestBeanMap)
    {
       RequestContext.INSTANCE.setBeanMap(null);
       RequestContext.INSTANCE.setActive(false);
    }
 
-   protected void endApplication(String id, BeanMap applicationBeanMap)
+   protected void endApplication(String id, BeanStore applicationBeanMap)
    {
       log.trace("Ending application " + id);
       ApplicationContext.INSTANCE.destroy();
@@ -78,14 +78,14 @@
       ApplicationContext.INSTANCE.setBeanMap(null);
    }
 
-   protected void beginSession(String id, BeanMap sessionBeanMap)
+   protected void beginSession(String id, BeanStore sessionBeanMap)
    {
       log.trace("Starting session " + id);
       SessionContext.INSTANCE.setBeanMap(sessionBeanMap);
       SessionContext.INSTANCE.setActive(true);
    }
 
-   protected void endSession(String id, BeanMap sessionBeanMap)
+   protected void endSession(String id, BeanStore sessionBeanMap)
    {
       log.trace("Ending session " + id);
       ConversationManager conversationManager = CurrentManager.rootManager().getInstanceByType(ConversationManager.class);
@@ -95,7 +95,7 @@
       SessionContext.INSTANCE.setActive(false);
    }
 
-   public void beginRequest(String id, BeanMap requestBeanMap)
+   public void beginRequest(String id, BeanStore requestBeanMap)
    {
       log.trace("Starting request " + id);
       RequestContext.INSTANCE.setBeanMap(requestBeanMap);
@@ -103,7 +103,7 @@
       DependentContext.INSTANCE.setActive(true);
    }
 
-   public void endRequest(String id, BeanMap requestBeanMap)
+   public void endRequest(String id, BeanStore requestBeanMap)
    {
       log.trace("Ending request " + id);
       RequestContext.INSTANCE.setBeanMap(requestBeanMap);
@@ -112,7 +112,7 @@
       RequestContext.INSTANCE.setActive(false);
    }
 
-   protected void restoreConversation(String id, BeanMap conversationBeanMap)
+   protected void restoreConversation(String id, BeanStore conversationBeanMap)
    {
       log.trace("Starting conversation " + id);
       ConversationContext.INSTANCE.setBeanMap(conversationBeanMap);

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -23,7 +23,7 @@
 
 import org.jboss.webbeans.CurrentManager;
 import org.jboss.webbeans.context.SessionContext;
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.context.beanmap.SimpleBeanMap;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
@@ -72,7 +72,7 @@
       ServletInitialization servletInitialization = new ServletInitialization(servletContext).initialize();
       super.initialize();
       super.beginApplication(servletContext.getServletContextName(), new ApplicationBeanMap(servletContext));
-      BeanMap requestBeanMap = new SimpleBeanMap();
+      BeanStore requestBeanMap = new SimpleBeanMap();
       super.beginDeploy(requestBeanMap);
       servletInitialization.start();
       super.endDeploy(requestBeanMap);
@@ -113,9 +113,9 @@
     * @param session
     * @return
     */
-   protected BeanMap restoreSessionContext(HttpSession session)
+   protected BeanStore restoreSessionContext(HttpSession session)
    {
-      BeanMap sessionBeanMap = new HttpSessionBeanMap(session);
+      BeanStore sessionBeanMap = new HttpSessionBeanMap(session);
       SessionContext.INSTANCE.setBeanMap(sessionBeanMap);
       CurrentManager.rootManager().getInstanceByType(HttpSessionManager.class).setSession(session);
       return sessionBeanMap;
@@ -130,9 +130,9 @@
     */
    public void beginRequest(HttpServletRequest request)
    {
-      BeanMap beanMap = new SimpleBeanMap();
-      request.setAttribute(REQUEST_ATTRIBUTE_NAME, beanMap);
-      super.beginRequest(request.getRequestURI(), beanMap);
+      BeanStore beanStore = new SimpleBeanMap();
+      request.setAttribute(REQUEST_ATTRIBUTE_NAME, beanStore);
+      super.beginRequest(request.getRequestURI(), beanStore);
       restoreSessionContext(request.getSession());
    }
 
@@ -143,9 +143,9 @@
     */
    public void endRequest(HttpServletRequest request)
    {
-      BeanMap beanMap = (BeanMap) request.getAttribute(REQUEST_ATTRIBUTE_NAME);
+      BeanStore beanStore = (BeanStore) request.getAttribute(REQUEST_ATTRIBUTE_NAME);
       request.removeAttribute(REQUEST_ATTRIBUTE_NAME);
-      super.endRequest(request.getRequestURI(), beanMap);
+      super.endRequest(request.getRequestURI(), beanStore);
       SessionContext.INSTANCE.setBeanMap(null);
    }
 

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle2.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle2.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle2.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -23,7 +23,7 @@
 
 import org.jboss.webbeans.CurrentManager;
 import org.jboss.webbeans.context.SessionContext;
-import org.jboss.webbeans.context.beanmap.BeanMap;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.context.beanmap.SimpleBeanMap;
 
 /**
@@ -96,9 +96,9 @@
     * @param session
     * @return
     */
-   protected BeanMap restoreSessionContext(HttpSession session)
+   protected BeanStore restoreSessionContext(HttpSession session)
    {
-      BeanMap sessionBeanMap = new HttpSessionBeanMap(session);
+      BeanStore sessionBeanMap = new HttpSessionBeanMap(session);
       SessionContext.INSTANCE.setBeanMap(sessionBeanMap);
       CurrentManager.rootManager().getInstanceByType(HttpSessionManager.class).setSession(session);
       return sessionBeanMap;
@@ -114,9 +114,9 @@
    public void beginRequest(HttpServletRequest request)
    {
       restoreSessionContext(request.getSession());
-      BeanMap beanMap = new SimpleBeanMap();
-      request.setAttribute(REQUEST_ATTRIBUTE_NAME, beanMap);
-      super.beginRequest(request.getRequestURI(), beanMap);
+      BeanStore beanStore = new SimpleBeanMap();
+      request.setAttribute(REQUEST_ATTRIBUTE_NAME, beanStore);
+      super.beginRequest(request.getRequestURI(), beanStore);
    }
 
    /**
@@ -126,9 +126,9 @@
     */
    public void endRequest(HttpServletRequest request)
    {
-      BeanMap beanMap = (BeanMap) request.getAttribute(REQUEST_ATTRIBUTE_NAME);
+      BeanStore beanStore = (BeanStore) request.getAttribute(REQUEST_ATTRIBUTE_NAME);
       request.removeAttribute(REQUEST_ATTRIBUTE_NAME);
-      super.endRequest(request.getRequestURI(), beanMap);
+      super.endRequest(request.getRequestURI(), beanStore);
       SessionContext.INSTANCE.setBeanMap(null);
    }
 

Modified: ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/Bootstrap.java
===================================================================
--- ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/Bootstrap.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/Bootstrap.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -4,6 +4,7 @@
 
 import org.jboss.webbeans.bootstrap.spi.EjbDiscovery;
 import org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.ejb.spi.EjbResolver;
 import org.jboss.webbeans.resources.spi.NamingContext;
 import org.jboss.webbeans.resources.spi.ResourceLoader;
@@ -56,6 +57,8 @@
     */
    public void setResourceLoader(ResourceLoader resourceLoader);
    
+   public void setApplicationContext(BeanStore beanStore);
+   
    /**
     * Initialize the bootstrap:
     * <ul>

Modified: ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/helpers/AbstractBootstrap.java
===================================================================
--- ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/helpers/AbstractBootstrap.java	2009-02-23 12:56:55 UTC (rev 1658)
+++ ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/bootstrap/api/helpers/AbstractBootstrap.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -3,6 +3,7 @@
 import org.jboss.webbeans.bootstrap.api.Bootstrap;
 import org.jboss.webbeans.bootstrap.spi.EjbDiscovery;
 import org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery;
+import org.jboss.webbeans.context.api.BeanStore;
 import org.jboss.webbeans.ejb.spi.EjbResolver;
 import org.jboss.webbeans.resources.spi.NamingContext;
 import org.jboss.webbeans.resources.spi.ResourceLoader;
@@ -15,6 +16,7 @@
    private NamingContext namingContext;
    private EjbResolver ejbResolver;
    private EjbDiscovery ejbDiscovery;
+   private BeanStore applicationContext;
 
    public void setEjbDiscovery(EjbDiscovery ejbDiscovery)
    {
@@ -66,4 +68,14 @@
       return ejbDiscovery;
    }
    
+   public BeanStore getApplicationContext()
+   {
+      return applicationContext;
+   }
+   
+   public void setApplicationContext(BeanStore applicationContext)
+   {
+      this.applicationContext = applicationContext;      
+   }
+   
 }
\ No newline at end of file

Copied: ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java (from rev 1658, ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/context/beanmap/BeanMap.java)
===================================================================
--- ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java	                        (rev 0)
+++ ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/context/api/BeanStore.java	2009-02-23 18:34:32 UTC (rev 1659)
@@ -0,0 +1,70 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, 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.
+ *
+ * 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.jboss.webbeans.context.api;
+
+import javax.context.Contextual;
+
+
+/**
+ * Interface for different implementations of Bean to Bean instance storage.
+ * Used primarily by the contexts.
+ * 
+ * @author Nicklas Karlsson
+ * 
+ * @see org.jboss.webbeans.context.beanmap.SimpleBeanMap
+ * @see org.jboss.webbeans.servlet.HttpSessionBeanMap
+ */
+public interface BeanStore
+{
+   /**
+    * Gets an instance of a bean from the storage.
+    * 
+    * @param bean The bean whose instance to return
+    * @return The instance. Null if not found
+    */
+   public abstract <T extends Object> T get(Contextual<? extends T> bean);
+
+   /**
+    * Removes an instance of a bean from the storage
+    * 
+    * @param bean The bean whose instance to remove
+    * @return The removed instance. Null if not found in storage.
+    */
+   public abstract <T extends Object> T remove(Contextual<? extends T> bean);
+
+   /**
+    * Clears the storage of any bean instances
+    */
+   public abstract void clear();
+
+   /**
+    * Returns an Iterable over the current contents in the storage
+    * 
+    * @return An Iterable over the keys in the storage
+    */
+   public abstract Iterable<Contextual<? extends Object>> getBeans();
+
+   /**
+    * Adds a bean instance to the storage
+    * 
+    * @param bean The bean type. Used as key
+    * @param instance The instance to add
+    * @return The instance added
+    */
+   public abstract <T> void put(Contextual<? extends T> bean, T instance);
+}
\ No newline at end of file




More information about the weld-commits mailing list