You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by st...@apache.org on 2012/06/12 09:43:57 UTC

git commit: DELTASPIKE-191 document container boot non-usage

Updated Branches:
  refs/heads/master 74016a168 -> 1b7e45112


DELTASPIKE-191 document container boot non-usage

Document that injection during CDI container boot
is not allowed by the CDI spec and that 'non-portable
behaviour results'


Project: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/commit/1b7e4511
Tree: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/tree/1b7e4511
Diff: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/diff/1b7e4511

Branch: refs/heads/master
Commit: 1b7e45112cbddf4904914a4ab6b094cc570fd040
Parents: 74016a1
Author: Mark Struberg <st...@apache.org>
Authored: Tue Jun 12 09:41:08 2012 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Tue Jun 12 09:41:08 2012 +0200

----------------------------------------------------------------------
 .../core/api/provider/BeanManagerProvider.java     |    7 +++++++
 .../deltaspike/core/api/provider/BeanProvider.java |   12 ++++++++++--
 2 files changed, 17 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/1b7e4511/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
index b1c01c4..d6c9a27 100644
--- a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
+++ b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
@@ -47,6 +47,13 @@ import org.apache.deltaspike.core.util.ClassUtils;
  * <pre>
  * BeanManager bm = BeanManagerProvider.getInstance().getBeanManager();
  * </pre>
+ *
+ * <p><b>Attention:</b> This method is intended for being used in user code at runtime.
+ * If this method gets used during Container boot (in an Extension), non-portable
+ * behaviour results. During bootstrapping an Extension shall &#064;Inject BeanManager to get
+ * access to the underlying BeanManager (see e.g. {@link #cleanFinalBeanManagerMap(AfterDeploymentValidation)} ).
+ * This is the only way to guarantee to get the right
+ * BeanManager in more complex Container scenarios.</p>
  */
 public class BeanManagerProvider implements Extension
 {

http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/1b7e4511/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java
index ff11e79..01046c4 100644
--- a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java
+++ b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java
@@ -38,8 +38,16 @@ import java.util.List;
 import java.util.Set;
 
 /**
- * This class contains utility methods to resolve contextual references
- * in situations where no injection is available.
+ * <p>This class contains utility methods to resolve contextual references
+ * in situations where no injection is available because the
+ * current class is not managed by the CDI Container. This can happen
+ * in e.g. a JPA-2.0 EntityListener, a ServletFilter, a Spring managed
+ * Bean, etc.</p>
+ *
+ * <p><b>Attention:</b> This method is intended for being used in user code at runtime.
+ * If this method gets used during Container boot (in an Extension), non-portable
+ * behaviour results. The CDI specification only allows injection of the
+ * BeanManager during CDI-Container boot time.</>
  *
  * @see BeanManagerProvider
  */