Weld SVN: r4787 - doc/trunk/reference/en-US.
by weld-commits@lists.jboss.org
Author: gavin.king(a)jboss.com
Date: 2009-11-08 14:15:53 -0500 (Sun, 08 Nov 2009)
New Revision: 4787
Modified:
doc/trunk/reference/en-US/ee.xml
doc/trunk/reference/en-US/interceptors.xml
Log:
throws Exception
Modified: doc/trunk/reference/en-US/ee.xml
===================================================================
--- doc/trunk/reference/en-US/ee.xml 2009-11-08 18:51:48 UTC (rev 4786)
+++ doc/trunk/reference/en-US/ee.xml 2009-11-08 19:15:53 UTC (rev 4787)
@@ -22,7 +22,7 @@
public class TransactionInterceptor {
@Resource Transaction transaction;
- @AroundInvoke public Object manageTransaction(InvocationContext ctx) { ... }
+ @AroundInvoke public Object manageTransaction(InvocationContext ctx) throws Exception { ... }
}]]></programlisting>
<programlisting role="JAVA"><![CDATA[@SessionScoped
Modified: doc/trunk/reference/en-US/interceptors.xml
===================================================================
--- doc/trunk/reference/en-US/interceptors.xml 2009-11-08 18:51:48 UTC (rev 4786)
+++ doc/trunk/reference/en-US/interceptors.xml 2009-11-08 19:15:53 UTC (rev 4787)
@@ -35,7 +35,7 @@
</para>
<programlisting role="JAVA"><![CDATA[public class TransactionInterceptor {
- @AroundInvoke public Object manageTransaction(InvocationContext ctx) { ... }
+ @AroundInvoke public Object manageTransaction(InvocationContext ctx) throws Exception { ... }
}]]></programlisting>
<para>
@@ -92,7 +92,7 @@
<programlisting role="JAVA"><![CDATA[@Transactional @Interceptor
public class TransactionInterceptor {
- @AroundInvoke public Object manageTransaction(InvocationContext ctx) { ... }
+ @AroundInvoke public Object manageTransaction(InvocationContext ctx) throws Exception { ... }
}]]></programlisting>
<para>
@@ -105,7 +105,7 @@
@Resource Transaction transaction;
- @AroundInvoke public Object manageTransaction(InvocationContext ctx) { ... }
+ @AroundInvoke public Object manageTransaction(InvocationContext ctx) throws Exception { ... }
}]]></programlisting>
@@ -194,7 +194,7 @@
<programlisting role="JAVA"><![CDATA[@Transactional(requiresNew = true) @Interceptor
public class RequiresNewTransactionInterceptor {
- @AroundInvoke public Object manageTransaction(InvocationContext ctx) { ... }
+ @AroundInvoke public Object manageTransaction(InvocationContext ctx) throws Exception { ... }
}]]></programlisting>
<para>
16 years, 5 months
Weld SVN: r4786 - api/trunk/cdi/src/main/java/javax/enterprise/util.
by weld-commits@lists.jboss.org
Author: gavin.king(a)jboss.com
Date: 2009-11-08 13:51:48 -0500 (Sun, 08 Nov 2009)
New Revision: 4786
Modified:
api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java
api/trunk/cdi/src/main/java/javax/enterprise/util/TypeLiteral.java
Log:
put the check back in, but only for annotation types with members
Modified: api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java
===================================================================
--- api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java 2009-11-08 17:22:25 UTC (rev 4785)
+++ api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java 2009-11-08 18:51:48 UTC (rev 4786)
@@ -64,6 +64,10 @@
{
if (members==null) {
members = annotationType().getDeclaredMethods();
+ if ( members.length>0 && !annotationType().isAssignableFrom(this.getClass()) )
+ {
+ throw new RuntimeException(getClass() + " does not implement the annotation type with members " + annotationType().getName());
+ }
}
return members;
}
@@ -113,7 +117,7 @@
annotationType = getTypeParameter(annotationLiteralSubclass);
if (annotationType == null)
{
- throw new RuntimeException(getClass() + " is missing type parameter in AnnotationLiteral");
+ throw new RuntimeException(getClass() + " does not specify the type parameter T of AnnotationLiteral<T>");
}
}
return annotationType;
Modified: api/trunk/cdi/src/main/java/javax/enterprise/util/TypeLiteral.java
===================================================================
--- api/trunk/cdi/src/main/java/javax/enterprise/util/TypeLiteral.java 2009-11-08 17:22:25 UTC (rev 4785)
+++ api/trunk/cdi/src/main/java/javax/enterprise/util/TypeLiteral.java 2009-11-08 18:51:48 UTC (rev 4786)
@@ -64,7 +64,7 @@
actualType = getTypeParameter(typeLiteralSubclass);
if (actualType == null)
{
- throw new RuntimeException(getClass() + " is missing type parameter in TypeLiteral");
+ throw new RuntimeException(getClass() + " does not specify the type parameter T of TypeLiteral<T>");
}
}
return actualType;
16 years, 5 months
Weld SVN: r4785 - in cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests: definition and 1 other directory.
by weld-commits@lists.jboss.org
Author: jharting
Date: 2009-11-08 12:22:25 -0500 (Sun, 08 Nov 2009)
New Revision: 4785
Added:
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/ClassWithAroundInvokeMethod.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/DefinitionTest.java
Log:
Added test for interceptor method placed on the target class.
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/ClassWithAroundInvokeMethod.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/ClassWithAroundInvokeMethod.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/ClassWithAroundInvokeMethod.java 2009-11-08 17:22:25 UTC (rev 4785)
@@ -0,0 +1,17 @@
+package org.jboss.jsr299.tck.interceptors.tests.definition;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+class ClassWithAroundInvokeMethod
+{
+ public String foo()
+ {
+ return "bar";
+ }
+
+ @AroundInvoke
+ public Object intercept(InvocationContext ctx) throws Exception
+ {
+ return ctx.proceed() + "bar";
+ }
+}
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/DefinitionTest.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/DefinitionTest.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/definition/DefinitionTest.java 2009-11-08 17:22:25 UTC (rev 4785)
@@ -0,0 +1,35 @@
+/*
+ * 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.jsr299.tck.interceptors.tests.definition;
+
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecVersion;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.testng.annotations.Test;
+
+@Artifact
+@SpecVersion(spec = "int", version = "3.1.PFD")
+public class DefinitionTest extends AbstractJSR299Test
+{
+ @Test(groups = "ri-broken")
+ @SpecAssertion(section = "1", id= "a")
+ // WELD-276
+ public void testInterceptorMethodDefinedOnTargetClass() {
+ assert getInstanceByType(ClassWithAroundInvokeMethod.class).foo().equals("barbar");
+ }
+}
16 years, 5 months
Weld SVN: r4784 - in cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests: method and 1 other directory.
by weld-commits@lists.jboss.org
Author: jharting
Date: 2009-11-08 12:03:48 -0500 (Sun, 08 Nov 2009)
New Revision: 4784
Added:
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Dog.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/DogInterceptor.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Fish.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/FishInterceptor.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/MethodLevelInterceptorTest.java
Log:
Tests for method-level interceptors
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Dog.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Dog.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Dog.java 2009-11-08 17:03:48 UTC (rev 4784)
@@ -0,0 +1,19 @@
+package org.jboss.jsr299.tck.interceptors.tests.method;
+
+import javax.interceptor.ExcludeClassInterceptors;
+import javax.interceptor.Interceptors;
+
+(a)Interceptors(DogInterceptor.class)
+class Dog
+{
+ public String foo()
+ {
+ return "bar";
+ }
+
+ @ExcludeClassInterceptors
+ public String ping()
+ {
+ return "pong";
+ }
+}
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/DogInterceptor.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/DogInterceptor.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/DogInterceptor.java 2009-11-08 17:03:48 UTC (rev 4784)
@@ -0,0 +1,12 @@
+package org.jboss.jsr299.tck.interceptors.tests.method;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+
+class DogInterceptor
+{
+ @AroundInvoke
+ public Object intercept(InvocationContext ctx) throws Exception {
+ return "Intercepted " + ctx.proceed();
+ }
+}
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Fish.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Fish.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/Fish.java 2009-11-08 17:03:48 UTC (rev 4784)
@@ -0,0 +1,20 @@
+package org.jboss.jsr299.tck.interceptors.tests.method;
+
+import javax.interceptor.Interceptors;
+
+class Fish
+{
+ @Interceptors(FishInterceptor.class)
+ public String foo() {
+ return "bar";
+ }
+
+ @Interceptors(FishInterceptor.class)
+ public String ping() {
+ return "pong";
+ }
+
+ public String getName() {
+ return "Salmon";
+ }
+}
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/FishInterceptor.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/FishInterceptor.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/FishInterceptor.java 2009-11-08 17:03:48 UTC (rev 4784)
@@ -0,0 +1,25 @@
+package org.jboss.jsr299.tck.interceptors.tests.method;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+
+class FishInterceptor
+{
+ private static int instanceCount = 0;
+
+ public FishInterceptor()
+ {
+ instanceCount++;
+ }
+
+ public static int getInstanceCount()
+ {
+ return instanceCount;
+ }
+
+ @SuppressWarnings("unused")
+ @AroundInvoke
+ public Object intercept(InvocationContext ctx) throws Exception {
+ return "Intercepted " + ctx.proceed();
+ }
+}
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/MethodLevelInterceptorTest.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/MethodLevelInterceptorTest.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/method/MethodLevelInterceptorTest.java 2009-11-08 17:03:48 UTC (rev 4784)
@@ -0,0 +1,54 @@
+/*
+ * 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.jsr299.tck.interceptors.tests.method;
+
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.test.audit.annotations.SpecVersion;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.testng.annotations.Test;
+
+@Artifact
+@SpecVersion(spec = "int", version = "3.1.PFD")
+public class MethodLevelInterceptorTest extends AbstractJSR299Test
+{
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "3", id = "ca"),
+ @SpecAssertion(section = "8", id = "a"),
+ @SpecAssertion(section = "8", id = "d"),
+ @SpecAssertion(section = "8", id = "g"),
+ @SpecAssertion(section = "8", id = "h")
+ })
+ public void testInterceptorCanBeAppliedToMoreThanOneMethod()
+ {
+ Fish fish = getInstanceByType(Fish.class);
+ assert fish.foo().equals("Intercepted bar");
+ assert fish.ping().equals("Intercepted pong");
+ assert fish.getName().equals("Salmon");
+ assert FishInterceptor.getInstanceCount() == 1;
+ }
+
+ @Test
+ @SpecAssertion(section = "8", id = "j")
+ public void testExcludeClassInterceptors() {
+ assert getInstanceByType(Dog.class).foo().equals("Intercepted bar");
+ assert getInstanceByType(Dog.class).ping().equals("pong");
+ }
+}
16 years, 5 months
Weld SVN: r4783 - in cdi-tck/trunk/impl/src/main: java/org/jboss/jsr299/tck/tests/decorators/resolution and 4 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2009-11-08 11:28:09 -0500 (Sun, 08 Nov 2009)
New Revision: 4783
Added:
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Animal.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Bar.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Baz.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Corge.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator2.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl2.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Cow.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/DecoratorResolutionTest.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FemaleFresianCow.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Foo.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooObjectDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FresianCow.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Garply.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Grault.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultExtendsDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultIntegerImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultSuperDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Qux.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxImpl.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListDecorator.java
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListImpl.java
cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/
cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/beans.xml
Modified:
cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/parameterized/AssignabilityOfRawAndParameterizedTypesTest.java
cdi-tck/trunk/impl/src/main/resources/tck-audit-cdi.xml
Log:
WELD-252
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Animal.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Animal.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Animal.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class Animal
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Animal.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Bar.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Bar.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Bar.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Bar<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Bar.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class BarDecorator<T>
+{
+
+ @Inject @Delegate
+ private Bar<T> bar;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class BarImpl<T> implements Bar<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BarImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Baz.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Baz.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Baz.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Baz<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Baz.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class BazDecorator
+{
+
+ @Inject @Delegate
+ private Baz<Object> baz;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class BazImpl<T> implements Baz<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/BazImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Corge.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Corge.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Corge.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Corge<T, S>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Corge.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class CorgeDecorator
+{
+
+ @Inject @Delegate
+ private Corge<? extends Animal, ? super FresianCow> corge;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator2.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator2.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator2.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class CorgeDecorator2
+{
+
+ @Inject @Delegate
+ private Corge<Animal, ? extends FemaleFresianCow> corge;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeDecorator2.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class CorgeImpl implements Corge<Cow, Cow>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl2.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl2.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl2.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class CorgeImpl2 implements Corge<Animal, FemaleFresianCow>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/CorgeImpl2.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Cow.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Cow.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Cow.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class Cow extends Animal
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Cow.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/DecoratorResolutionTest.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/DecoratorResolutionTest.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/DecoratorResolutionTest.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,166 @@
+/*
+ * 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.jsr299.tck.tests.decorators.resolution;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import javax.enterprise.inject.spi.Decorator;
+import javax.enterprise.util.TypeLiteral;
+
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.test.audit.annotations.SpecVersion;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.jboss.testharness.impl.packaging.jsr299.BeansXml;
+import org.testng.annotations.Test;
+
+/**
+ * @author pmuir
+ *
+ */
+@Artifact
+@BeansXml("beans.xml")
+@SpecVersion(spec="cdi", version="20091101")
+public class DecoratorResolutionTest<T, C extends Cow> extends AbstractJSR299Test
+{
+
+ private final TypeLiteral<Bar<T>> BAR_TYPE_VARIABLE_LITERAL = new TypeLiteral<Bar<T>>() {};
+ private final TypeLiteral<Baz<T>> BAZ_TYPE_VARIABLE_LITERAL = new TypeLiteral<Baz<T>>() {};
+ private final TypeLiteral<Foo<T>> FOO_TYPE_VARIABLE_LITERAL = new TypeLiteral<Foo<T>>() {};
+ private final TypeLiteral<Foo<Object>> FOO_OBJECT_LITERAL = new TypeLiteral<Foo<Object>>() {};
+ private final TypeLiteral<Qux<String>> QUX_STRING_LITERAL = new TypeLiteral<Qux<String>>() {};
+ private final TypeLiteral<Qux<List<String>>> QUX_STRING_LIST_LITERAL = new TypeLiteral<Qux<List<String>>>() {};
+ private final TypeLiteral<Grault<Integer>> GRAULT_INTEGER_LITERAL = new TypeLiteral<Grault<Integer>>() {};
+ private final TypeLiteral<Corge<C, C>> CORGE_TYPE_VARIABLE_EXTENDS_COW_LITERAL = new TypeLiteral<Corge<C, C>>(){};
+ private final TypeLiteral<Garply<? extends FresianCow>> GARPLY_EXTENDS_FRESIAN_COW_LITERAL = new TypeLiteral<Garply<? extends FresianCow>>() {};
+ private final TypeLiteral<Garply<Cow>> GARPLY_COW_LITERAL = new TypeLiteral<Garply<Cow>>() {};
+
+ private static boolean decoratorCollectionMatches(Collection<Decorator<?>> decorators, Class<?>... types)
+ {
+ Set<Class<?>> typeSet = new HashSet<Class<?>>(Arrays.asList(types));
+ for (Decorator<?> decorator : decorators)
+ {
+ typeSet.remove(decorator.getBeanClass());
+ }
+ return typeSet.isEmpty();
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="aa")
+ })
+
+ public void testUnboundedTypeVariables()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(BAR_TYPE_VARIABLE_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, BarDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="ab")
+ })
+
+ public void testObject()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(BAZ_TYPE_VARIABLE_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, BazDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="ac")
+ })
+
+ public void testUnboundedTypeVariablesAndObject()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(FOO_TYPE_VARIABLE_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, FooDecorator.class, FooObjectDecorator.class);
+ List<Decorator<?>> decorators1 = getCurrentManager().resolveDecorators(Collections.singleton(FOO_OBJECT_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators1, FooDecorator.class, FooObjectDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="c")
+ })
+
+ public void testIdenticalTypeParamerters()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(QUX_STRING_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, QuxDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="d")
+ })
+
+ public void testNestedIdenticalTypeParamerters()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(QUX_STRING_LIST_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, QuxListDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="e")
+ })
+ public void testDelegateWildcardBeanActualType()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(GRAULT_INTEGER_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, GraultExtendsDecorator.class, GraultSuperDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="f")
+ })
+ public void testDelegateWildcardBeanTypeVariable()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(CORGE_TYPE_VARIABLE_EXTENDS_COW_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, CorgeDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="g")
+ })
+ public void testDelegateTypeVariableBeanTypeVariable()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(GARPLY_EXTENDS_FRESIAN_COW_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, GarplyDecorator.class);
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "8.3.1", id="h")
+ })
+ public void testDelegateTypeVariableBeanActualType()
+ {
+ List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(Collections.singleton(GARPLY_COW_LITERAL.getType()));
+ assert decoratorCollectionMatches(decorators, GarplyDecorator.class);
+ }
+
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/DecoratorResolutionTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FemaleFresianCow.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FemaleFresianCow.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FemaleFresianCow.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class FemaleFresianCow extends FresianCow
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FemaleFresianCow.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Foo.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Foo.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Foo.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Foo<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Foo.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class FooDecorator<T>
+{
+
+ @Inject @Delegate
+ private Foo<T> foo;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class FooImpl<T> implements Foo<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooObjectDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooObjectDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooObjectDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class FooObjectDecorator
+{
+
+ @Inject @Delegate
+ private Foo<Object> foo;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FooObjectDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FresianCow.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FresianCow.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FresianCow.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class FresianCow extends Cow
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/FresianCow.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Garply.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Garply.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Garply.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Garply<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Garply.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class GarplyDecorator<T extends Animal>
+{
+
+ @Inject @Delegate
+ private Garply<T> garply;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class GarplyImpl implements Garply<Cow>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GarplyImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Grault.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Grault.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Grault.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Grault<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Grault.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultExtendsDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultExtendsDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultExtendsDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class GraultExtendsDecorator
+{
+
+ @Inject @Delegate
+ private Grault<? extends Number> grault;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultExtendsDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultIntegerImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultIntegerImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultIntegerImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class GraultIntegerImpl implements Grault<Integer>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultIntegerImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultSuperDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultSuperDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultSuperDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class GraultSuperDecorator
+{
+
+ @Inject @Delegate
+ private Grault<? super Integer> grault;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/GraultSuperDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Qux.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Qux.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Qux.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public interface Qux<T>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/Qux.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class QuxDecorator
+{
+
+ @Inject @Delegate
+ private Qux<String> qux;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+public class QuxImpl implements Qux<String>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListDecorator.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListDecorator.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListDecorator.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,16 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import java.util.List;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+@Decorator
+public class QuxListDecorator
+{
+
+ @Inject @Delegate
+ private Qux<List<String>> qux;
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListImpl.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListImpl.java (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListImpl.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,8 @@
+package org.jboss.jsr299.tck.tests.decorators.resolution;
+
+import java.util.List;
+
+public class QuxListImpl implements Qux<List<String>>
+{
+
+}
Property changes on: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/decorators/resolution/QuxListImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Modified: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/parameterized/AssignabilityOfRawAndParameterizedTypesTest.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/parameterized/AssignabilityOfRawAndParameterizedTypesTest.java 2009-11-08 16:16:39 UTC (rev 4782)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/parameterized/AssignabilityOfRawAndParameterizedTypesTest.java 2009-11-08 16:28:09 UTC (rev 4783)
@@ -81,6 +81,15 @@
assert beans.size() == 1;
assert rawTypeSetMatches(beans.iterator().next().getTypes(), Result.class, Object.class);
}
+
+ @Test(groups = { "resolution" })
+ @SpecAssertion(section = "5.2.3", id = "db")
+ public void testAssignabilityOfParameterizedTypeWithTypeVariablesToParameterizedTypeWithWildcards2()
+ {
+ Set<Bean<Result<? extends Exception, ? super Exception>>> beans = getBeans(new TypeLiteral<Result<? extends Exception, ? super Exception>>(){});
+ assert beans.size() == 1;
+ assert rawTypeSetMatches(beans.iterator().next().getTypes(), Result.class, Object.class);
+ }
@Test(groups = { "resolution" })
@SpecAssertion(section = "5.2.3", id = "e")
Added: cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/beans.xml
===================================================================
--- cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/beans.xml (rev 0)
+++ cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/beans.xml 2009-11-08 16:28:09 UTC (rev 4783)
@@ -0,0 +1,15 @@
+<beans>
+ <decorators>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.BarDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.FooDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.FooObjectDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.QuxDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.QuxListDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.BazDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.GraultExtendsDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.GraultSuperDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.CorgeDecorator2</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.CorgeDecorator</class>
+ <class>org.jboss.jsr299.tck.tests.decorators.resolution.GarplyDecorator</class>
+ </decorators>
+</beans>
Property changes on: cdi-tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/tests/decorators/resolution/beans.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: cdi-tck/trunk/impl/src/main/resources/tck-audit-cdi.xml
===================================================================
--- cdi-tck/trunk/impl/src/main/resources/tck-audit-cdi.xml 2009-11-08 16:16:39 UTC (rev 4782)
+++ cdi-tck/trunk/impl/src/main/resources/tck-audit-cdi.xml 2009-11-08 16:28:09 UTC (rev 4783)
@@ -4382,17 +4382,21 @@
</assertion>
</section>
- <section id="8.3.1">
+ <section id="8.3.1" title="Assignability of raw and parameterized types for delegate injection points">
<group>
<text>A raw bean type is considered assignable to a parameterized delegate type if the raw types are identical and all type parameters of the delegate type are either unbounded type variables or java.lang.Object.</text>
- <assertion id="a">
+ <assertion id="ab">
<text>Check all type parameters are unbounded type variables</text>
</assertion>
- <assertion id="b">
+ <assertion id="ab">
<text>Check all type parameters are Object</text>
</assertion>
+
+ <assertion id="ac">
+ <text>Check mix</text>
+ </assertion>
</group>
<group>
16 years, 5 months
Weld SVN: r4782 - cdi-tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2009-11-08 11:16:39 -0500 (Sun, 08 Nov 2009)
New Revision: 4782
Modified:
cdi-tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Managers.java
Log:
improve javadoc
Modified: cdi-tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Managers.java
===================================================================
--- cdi-tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Managers.java 2009-11-08 15:55:42 UTC (rev 4781)
+++ cdi-tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Managers.java 2009-11-08 16:16:39 UTC (rev 4782)
@@ -10,6 +10,9 @@
* The TCK porting package must provide an implementation of this interface
* which is suitable for the target implementation.
*
+ * Managers also allows the TCK to report the state of the Container back to the
+ * TCK, by checking if a deployment problem has occurred,
+ *
* @author Shane Bryzak
*/
public interface Managers
@@ -25,7 +28,7 @@
public BeanManager getManager();
/**
- * Checks whether there is a definition error, as described in Section 12.4,
+ * Checks whether there is a definition error, as described in Section 2.8,
* "Problems detected automatically by the container".
*
* @param deploymentException the deployment exception context provided by
@@ -37,7 +40,7 @@
public boolean isDefinitionError(DeploymentException deploymentException);
/**
- * Checks whether there is a deployment error, as described in Section 12.4,
+ * Checks whether there is a deployment error, as described in Section 2.8,
* "Problems detected automatically by the container".
*
* @param deploymentException the deployment exception context provided by
16 years, 5 months
Weld SVN: r4781 - in core/trunk/impl/src/main: java/org/jboss/weld/bean and 2 other directories.
by weld-commits@lists.jboss.org
Author: dallen6
Date: 2009-11-08 10:55:42 -0500 (Sun, 08 Nov 2009)
New Revision: 4781
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/DeploymentException.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractClassBean.java
core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java
core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties
Log:
Added new localized message constructors to DeploymentException and converted all exceptions in AbstractClassBean.
Modified: core/trunk/impl/src/main/java/org/jboss/weld/DeploymentException.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/DeploymentException.java 2009-11-08 14:59:39 UTC (rev 4780)
+++ core/trunk/impl/src/main/java/org/jboss/weld/DeploymentException.java 2009-11-08 15:55:42 UTC (rev 4781)
@@ -16,6 +16,9 @@
*/
package org.jboss.weld;
+import static org.jboss.weld.logging.LoggerFactory.loggerFactory;
+import ch.qos.cal10n.IMessageConveyor;
+
/**
* Thrown if an deployment exception occurs.
*
@@ -25,11 +28,24 @@
{
private static final long serialVersionUID = 8014646336322875707L;
+ // Exception messages
+ private static final IMessageConveyor messageConveyer = loggerFactory().getMessageConveyor();
+
public DeploymentException()
{
super();
}
+ public <E extends Enum<?>> DeploymentException(E key, Object... args)
+ {
+ super(messageConveyer.getMessage(key, args));
+ }
+
+ public <E extends Enum<?>> DeploymentException(E key, Throwable throwable, Object... args)
+ {
+ super(messageConveyer.getMessage(key, args), throwable);
+ }
+
public DeploymentException(String message, Throwable throwable)
{
super(message, throwable);
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractClassBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractClassBean.java 2009-11-08 14:59:39 UTC (rev 4780)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractClassBean.java 2009-11-08 15:55:42 UTC (rev 4781)
@@ -18,9 +18,13 @@
import static org.jboss.weld.logging.Category.BEAN;
import static org.jboss.weld.logging.LoggerFactory.loggerFactory;
+import static org.jboss.weld.logging.messages.BeanMessage.CONFLICTING_INTERCEPTOR_BINDINGS;
+import static org.jboss.weld.logging.messages.BeanMessage.INVOCATION_ERROR;
import static org.jboss.weld.logging.messages.BeanMessage.NON_CONTAINER_DECORATOR;
+import static org.jboss.weld.logging.messages.BeanMessage.ONLY_ONE_SCOPE_ALLOWED;
import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_BEAN_ACCESS_FAILED;
import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_FAILED;
+import static org.jboss.weld.logging.messages.BeanMessage.SPECIALIZING_BEAN_MUST_EXTEND_A_BEAN;
import static org.jboss.weld.logging.messages.BeanMessage.USING_DEFAULT_SCOPE;
import static org.jboss.weld.logging.messages.BeanMessage.USING_SCOPE;
@@ -57,9 +61,6 @@
import org.jboss.weld.bean.proxy.DecoratorProxyMethodHandler;
import org.jboss.weld.bootstrap.BeanDeployerEnvironment;
import org.jboss.weld.context.SerializableContextualImpl;
-import org.jboss.weld.bean.proxy.DecoratorProxyMethodHandler;
-import org.jboss.weld.bootstrap.BeanDeployerEnvironment;
-import org.jboss.weld.context.SerializableContextualImpl;
import org.jboss.weld.context.SerializableContextualInstanceImpl;
import org.jboss.weld.ejb.EJBApiAbstraction;
import org.jboss.weld.injection.FieldInjectionPoint;
@@ -293,7 +294,7 @@
}
else if (scopeTypes.size() > 1)
{
- throw new DefinitionException("At most one scope may be specified on " + getAnnotatedItem());
+ throw new DefinitionException(ONLY_ONE_SCOPE_ALLOWED, getAnnotatedItem());
}
}
@@ -320,7 +321,7 @@
super.preSpecialize(environment);
if (getAnnotatedItem().getWeldSuperclass() == null || getAnnotatedItem().getWeldSuperclass().getJavaClass().equals(Object.class))
{
- throw new DefinitionException("Specializing bean must extend another bean " + toString());
+ throw new DefinitionException(SPECIALIZING_BEAN_MUST_EXTEND_A_BEAN, this);
}
}
@@ -441,7 +442,7 @@
if (classBindingAnnotations.size() > 0)
{
if (Beans.findInterceptorBindingConflicts(manager, classBindingAnnotations))
- throw new DeploymentException("Conflicting interceptor bindings found on " + getType());
+ throw new DeploymentException(CONFLICTING_INTERCEPTOR_BINDINGS, getType());
Annotation[] classBindingAnnotationsArray = classBindingAnnotations.toArray(new Annotation[0]);
@@ -466,7 +467,7 @@
if (methodBindingAnnotations.size() > 0)
{
if (Beans.findInterceptorBindingConflicts(manager, classBindingAnnotations))
- throw new DeploymentException("Conflicting interceptor bindings found on " + getType() + "." + method.getName() + "()");
+ throw new DeploymentException(CONFLICTING_INTERCEPTOR_BINDINGS, getType() + "." + method.getName() + "()");
if (method.isAnnotationPresent(manager.getServices().get(EJBApiAbstraction.class).TIMEOUT_ANNOTATION_CLASS))
{
@@ -517,7 +518,7 @@
}
catch (Exception e)
{
- throw new RuntimeException("Unable to invoke " + preDestroy + " on " + instance, e);
+ throw new WeldException(INVOCATION_ERROR, e, preDestroy, instance);
}
}
}
@@ -533,7 +534,7 @@
}
catch (Exception e)
{
- throw new RuntimeException("Unable to invoke " + postConstruct + " on " + instance, e);
+ throw new WeldException(INVOCATION_ERROR, e, postConstruct, instance);
}
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java 2009-11-08 14:59:39 UTC (rev 4780)
+++ core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java 2009-11-08 15:55:42 UTC (rev 4781)
@@ -63,6 +63,10 @@
@MessageId("000042") NON_CONTAINER_DECORATOR,
@MessageId("000043") BEAN_NOT_EE_RESOURCE_PRODUCER,
@MessageId("000044") NULL_INSTANCE,
- @MessageId("000045") PROXY_REQUIRED
+ @MessageId("000045") PROXY_REQUIRED,
+ @MessageId("000046") ONLY_ONE_SCOPE_ALLOWED,
+ @MessageId("000047") SPECIALIZING_BEAN_MUST_EXTEND_A_BEAN,
+ @MessageId("000048") CONFLICTING_INTERCEPTOR_BINDINGS,
+ @MessageId("000049") INVOCATION_ERROR
}
Modified: core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties
===================================================================
--- core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties 2009-11-08 14:59:39 UTC (rev 4780)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties 2009-11-08 15:55:42 UTC (rev 4781)
@@ -44,3 +44,7 @@
NAME_NOT_ALLOWED_ON_SPECIALIZATION=Cannot put name on specializing and specialized class {0}
INTERCEPTION_TYPE_NOT_LIFECYCLE=InterceptionType must be lifecycle, but it is {0}
PROXY_REQUIRED=Proxy required
+ONLY_ONE_SCOPE_ALLOWED=At most one scope may be specified on {0}
+SPECIALIZING_BEAN_MUST_EXTEND_A_BEAN=Specializing bean must extend another bean\: {0}
+CONFLICTING_INTERCEPTOR_BINDINGS=Conflicting interceptor bindings found on {0}
+INVOCATION_ERROR=Unable to invoke {0} on {1}
16 years, 5 months
Weld SVN: r4780 - core/trunk/osgi-bundle.
by weld-commits@lists.jboss.org
Author: rogerk
Date: 2009-11-08 09:59:39 -0500 (Sun, 08 Nov 2009)
New Revision: 4780
Modified:
core/trunk/osgi-bundle/pom.xml
Log:
export org.jboss.interceptor.*
Modified: core/trunk/osgi-bundle/pom.xml
===================================================================
--- core/trunk/osgi-bundle/pom.xml 2009-11-08 13:32:10 UTC (rev 4779)
+++ core/trunk/osgi-bundle/pom.xml 2009-11-08 14:59:39 UTC (rev 4780)
@@ -73,6 +73,7 @@
org.jboss.weld.bootstrap;
org.jboss.weld.introspector;
org.jboss.weld.servlet;
+ org.jboss.interceptor.*;
version=${osgi.version},
org.jboss.weld.el;
version=${osgi.version},
16 years, 5 months
Weld SVN: r4779 - api/trunk/cdi/src/main/java/javax/enterprise/util.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2009-11-08 08:32:10 -0500 (Sun, 08 Nov 2009)
New Revision: 4779
Modified:
api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java
Log:
tidy up, rollback requirement to implement annotation type
Modified: api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java
===================================================================
--- api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java 2009-11-08 12:00:28 UTC (rev 4778)
+++ api/trunk/cdi/src/main/java/javax/enterprise/util/AnnotationLiteral.java 2009-11-08 13:32:10 UTC (rev 4779)
@@ -115,10 +115,6 @@
{
throw new RuntimeException(getClass() + " is missing type parameter in AnnotationLiteral");
}
- if ( !annotationType.isAssignableFrom(this.getClass()) )
- {
- throw new RuntimeException(getClass() + " does not implement the annotation type");
- }
}
return annotationType;
}
@@ -174,9 +170,9 @@
}
appendInBraces(string, Arrays.toString(quoted));
}
- else if (value instanceof Class[])
+ else if (value instanceof Class<?>[])
{
- Class[] classes = (Class[]) value;
+ Class<?>[] classes = (Class<?>[]) value;
String[] names = new String[classes.length];
for(int j=0; j<classes.length; j++)
{
@@ -192,9 +188,9 @@
{
string.append('"').append(value).append('"');
}
- else if (value instanceof Class)
+ else if (value instanceof Class<?>)
{
- string.append(((Class)value).getName()).append(".class");
+ string.append(((Class<?>)value).getName()).append(".class");
}
else
{
16 years, 5 months
Weld SVN: r4778 - in core/trunk/impl/src/main: java/org/jboss/weld/bean/builtin and 4 other directories.
by weld-commits@lists.jboss.org
Author: dallen6
Date: 2009-11-08 07:00:28 -0500 (Sun, 08 Nov 2009)
New Revision: 4778
Added:
core/trunk/impl/src/main/java/org/jboss/weld/InvalidObjectException.java
core/trunk/impl/src/main/java/org/jboss/weld/NullInstanceException.java
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/CallableMethodHandler.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/AbstractEEBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/proxy/ClientProxyProvider.java
core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java
core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties
Log:
A couple more new exceptions and conversion of exception generation to localized messages.
Added: core/trunk/impl/src/main/java/org/jboss/weld/InvalidObjectException.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/InvalidObjectException.java (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/InvalidObjectException.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -0,0 +1,43 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat, Inc. and/or its affiliates, 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.weld;
+
+import static org.jboss.weld.logging.LoggerFactory.loggerFactory;
+import ch.qos.cal10n.IMessageConveyor;
+
+/**
+ * An extended version of {@link java.io.InvalidObjectException} that supports
+ * localization.
+ *
+ * @author David Allen
+ *
+ */
+public class InvalidObjectException extends java.io.InvalidObjectException
+{
+
+ private static final long serialVersionUID = 1L;
+
+ // Exception messages
+ private static final IMessageConveyor messageConveyer = loggerFactory().getMessageConveyor();
+
+ public <E extends Enum<?>> InvalidObjectException(E key, Object... args)
+ {
+ super(messageConveyer.getMessage(key, args));
+ }
+
+}
Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/InvalidObjectException.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: core/trunk/impl/src/main/java/org/jboss/weld/NullInstanceException.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/NullInstanceException.java (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/NullInstanceException.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -0,0 +1,38 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat, Inc. and/or its affiliates, 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.weld;
+
+/**
+ * This exception occurs in cases where an object instance was expected, but
+ * the reference was null. A typical example is with a producer method that
+ * is not allowed to return null.
+ *
+ * @author David Allen
+ *
+ */
+public class NullInstanceException extends WeldException
+{
+
+ private static final long serialVersionUID = 1L;
+
+ public <E extends Enum<?>> NullInstanceException(E key, Object... args)
+ {
+ super(key, args);
+ }
+
+}
Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/NullInstanceException.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/CallableMethodHandler.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/CallableMethodHandler.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/CallableMethodHandler.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -3,6 +3,7 @@
import static org.jboss.weld.logging.Category.BEAN;
import static org.jboss.weld.logging.LoggerFactory.loggerFactory;
import static org.jboss.weld.logging.messages.BeanMessage.CALL_PROXIED_METHOD;
+import static org.jboss.weld.logging.messages.BeanMessage.NULL_INSTANCE;
import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
@@ -11,6 +12,7 @@
import javassist.util.proxy.MethodHandler;
+import org.jboss.weld.NullInstanceException;
import org.slf4j.cal10n.LocLogger;
public class CallableMethodHandler implements MethodHandler, Serializable
@@ -37,7 +39,7 @@
Object instance = callable.call();
if (instance == null)
{
- throw new NullPointerException("Unable to obtain instance. Bean: " + callable);
+ throw new NullInstanceException(NULL_INSTANCE, callable);
}
try
{
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceImpl.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceImpl.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -16,9 +16,9 @@
*/
package org.jboss.weld.bean.builtin;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_REQUIRED;
import static org.jboss.weld.util.Reflections.EMPTY_ANNOTATIONS;
-import java.io.InvalidObjectException;
import java.io.ObjectInputStream;
import java.io.ObjectStreamException;
import java.io.Serializable;
@@ -35,6 +35,7 @@
import javax.enterprise.util.TypeLiteral;
import org.jboss.weld.BeanManagerImpl;
+import org.jboss.weld.InvalidObjectException;
import org.jboss.weld.resolution.ResolvableWeldClass;
import org.jboss.weld.util.Beans;
import org.jboss.weld.util.Names;
@@ -152,7 +153,7 @@
private void readObject(ObjectInputStream stream) throws InvalidObjectException
{
- throw new InvalidObjectException("Proxy required");
+ throw new InvalidObjectException(PROXY_REQUIRED);
}
private static class SerializationProxy extends AbstractFacadeSerializationProxy
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/AbstractEEBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/AbstractEEBean.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/AbstractEEBean.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -1,5 +1,8 @@
package org.jboss.weld.bean.builtin.ee;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_BEAN_ACCESS_FAILED;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_FAILED;
+
import java.io.Serializable;
import java.lang.reflect.Type;
import java.util.HashSet;
@@ -35,11 +38,11 @@
}
catch (InstantiationException e)
{
- throw new DefinitionException("Could not instantiate client proxy for " + this, e);
+ throw new DefinitionException(PROXY_INSTANTIATION_FAILED, e, this);
}
catch (IllegalAccessException e)
{
- throw new DefinitionException("Could not access bean correctly when creating client proxy for " + this, e);
+ throw new DefinitionException(PROXY_INSTANTIATION_BEAN_ACCESS_FAILED, e, this);
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -16,7 +16,10 @@
*/
package org.jboss.weld.bean.builtin.ee;
+import static org.jboss.weld.logging.messages.BeanMessage.BEAN_NOT_EE_RESOURCE_PRODUCER;
import static org.jboss.weld.logging.messages.BeanMessage.INVALID_RESOURCE_PRODUCER_FIELD;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_BEAN_ACCESS_FAILED;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_FAILED;
import java.io.Serializable;
@@ -24,14 +27,16 @@
import javax.enterprise.context.spi.CreationalContext;
import org.jboss.weld.BeanManagerImpl;
+import org.jboss.weld.Container;
import org.jboss.weld.ForbiddenStateException;
-import org.jboss.weld.Container;
+import org.jboss.weld.WeldException;
import org.jboss.weld.bean.AbstractClassBean;
import org.jboss.weld.bean.ProducerField;
import org.jboss.weld.bean.builtin.CallableMethodHandler;
import org.jboss.weld.bootstrap.BeanDeployerEnvironment;
import org.jboss.weld.ejb.EJBApiAbstraction;
import org.jboss.weld.introspector.WeldField;
+import org.jboss.weld.logging.messages.BeanMessage;
import org.jboss.weld.persistence.PersistenceApiAbstraction;
import org.jboss.weld.serialization.spi.ContextualStore;
import org.jboss.weld.util.Proxies;
@@ -75,7 +80,7 @@
}
else
{
- throw new IllegalStateException("Bean is not an EE resource producer field. Bean: " + contextual);
+ throw new ForbiddenStateException(BEAN_NOT_EE_RESOURCE_PRODUCER, contextual);
}
}
return instance;
@@ -120,11 +125,11 @@
}
catch (InstantiationException e)
{
- throw new RuntimeException("Error creating proxy for resource producer field. Field: " + this, e);
+ throw new WeldException(PROXY_INSTANTIATION_FAILED, e, this);
}
catch (IllegalAccessException e)
{
- throw new RuntimeException("Error creating proxy for resource field. Field: " + this, e);
+ throw new WeldException(PROXY_INSTANTIATION_BEAN_ACCESS_FAILED, e, this);
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/proxy/ClientProxyProvider.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/proxy/ClientProxyProvider.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/proxy/ClientProxyProvider.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -17,6 +17,7 @@
package org.jboss.weld.bean.proxy;
import static org.jboss.weld.logging.messages.BeanMessage.BEAN_ID_CREATION_FAILED;
+import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_BEAN_ACCESS_FAILED;
import static org.jboss.weld.logging.messages.BeanMessage.PROXY_INSTANTIATION_FAILED;
import java.io.Serializable;
@@ -85,7 +86,7 @@
}
catch (IllegalAccessException e)
{
- throw new WeldException(BeanMessage.PROXY_INSTANTIATION_BEAN_ACCESS_FAILED, e, bean);
+ throw new WeldException(PROXY_INSTANTIATION_BEAN_ACCESS_FAILED, e, bean);
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java 2009-11-08 12:00:28 UTC (rev 4778)
@@ -60,6 +60,9 @@
@MessageId("000039") TYPED_CLASS_NOT_IN_HIERARCHY,
@MessageId("000040") MULTIPLE_SCOPES_FOUND_FROM_STEREOTYPES,
@MessageId("000041") NAME_NOT_ALLOWED_ON_SPECIALIZATION,
- @MessageId("000042") NON_CONTAINER_DECORATOR
+ @MessageId("000042") NON_CONTAINER_DECORATOR,
+ @MessageId("000043") BEAN_NOT_EE_RESOURCE_PRODUCER,
+ @MessageId("000044") NULL_INSTANCE,
+ @MessageId("000045") PROXY_REQUIRED
}
Modified: core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties
===================================================================
--- core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties 2009-11-08 10:30:59 UTC (rev 4777)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties 2009-11-08 12:00:28 UTC (rev 4778)
@@ -22,6 +22,8 @@
ANNOTATION_NOT_BINDING=The annotation {0} is not a binding for {1}
DUPLICATE_BINDING=The annotation {0} is already present in the bindings list for {1}
TYPE_PARAMETER_MUST_BE_CONCRETE=Type parameter must be a concrete type\: {0}
+BEAN_NOT_EE_RESOURCE_PRODUCER=The following bean is not an EE resource producer\: {0}
+NULL_INSTANCE=Unable to obtain instance from {0}
VALIDATION_SERVICE_NOT_AVAILABLE=ValidationServices are not available
INVALID_RESOURCE_PRODUCER_FIELD=Tried to create an EEResourceProducerField, but no @Resource, @PersistenceContext, @PersistenceUnit, @WebServiceRef or @EJB is present {0}
SECURITY_SERVICES_NOT_AVAILABLE=SecurityServices not available
@@ -41,3 +43,4 @@
NON_CONTAINER_DECORATOR=Cannot operate on non container provided decorator {0}
NAME_NOT_ALLOWED_ON_SPECIALIZATION=Cannot put name on specializing and specialized class {0}
INTERCEPTION_TYPE_NOT_LIFECYCLE=InterceptionType must be lifecycle, but it is {0}
+PROXY_REQUIRED=Proxy required
16 years, 5 months