You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by st...@apache.org on 2013/01/14 18:20:59 UTC

svn commit: r1432998 - /openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java

Author: struberg
Date: Mon Jan 14 17:20:59 2013
New Revision: 1432998

URL: http://svn.apache.org/viewvc?rev=1432998&view=rev
Log:
OWB-756 introduce BeanAttributes

Added:
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java

Added: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java?rev=1432998&view=auto
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java (added)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/BeanAttributesImpl.java Mon Jan 14 17:20:59 2013
@@ -0,0 +1,78 @@
+package org.apache.webbeans.portable;
+
+import javax.enterprise.inject.spi.BeanAttributes;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.util.Set;
+
+/**
+ * BeanAttributes are new in CDI-1.1. They represent all
+ * attributes of a Bean which can be changed via Extensions.
+ *
+ * @since 1.2.0
+ */
+public class BeanAttributesImpl<T> implements BeanAttributes<T>
+{
+    private Set<Type> types;
+    private Set<Class<? extends Annotation>> stereotypes;
+    private String name;
+    private Set<Annotation> qualifiers;
+    private Class<Annotation> scope;
+    private boolean isAlternative;
+
+    public BeanAttributesImpl(Set<Type> types, boolean alternative, String name, Set<Annotation> qualifiers,
+                              Class<Annotation> scope, Set<Class<? extends Annotation>> stereotypes)
+    {
+        this.types = types;
+        isAlternative = alternative;
+        this.name = name;
+        this.qualifiers = qualifiers;
+        this.scope = scope;
+        this.stereotypes = stereotypes;
+    }
+
+    @Override
+    public String getName()
+    {
+        return name;
+    }
+
+    @Override
+    public Set<Type> getTypes()
+    {
+        return types;
+    }
+
+    @Override
+    public Set<Annotation> getQualifiers()
+    {
+        return qualifiers;
+    }
+
+    @Override
+    public Class<? extends Annotation> getScope()
+    {
+        return scope;
+    }
+
+    /**
+     * @deprecated makes no sense in CDI-1.1
+     */
+    @Override
+    public boolean isNullable()
+    {
+        return true;
+    }
+
+    @Override
+    public Set<Class<? extends Annotation>> getStereotypes()
+    {
+        return stereotypes;
+    }
+
+    @Override
+    public boolean isAlternative()
+    {
+        return isAlternative;
+    }
+}