Weld SVN: r6913 - in core/trunk/impl/src/main: java/org/jboss/weld/logging/messages and 1 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-08-05 10:18:01 -0400 (Thu, 05 Aug 2010)
New Revision: 6913
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.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:
WELD-567
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 2010-08-05 13:59:35 UTC (rev 6912)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java 2010-08-05 14:18:01 UTC (rev 6913)
@@ -18,9 +18,11 @@
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.NON_DEPENDENT_RESOURCE_PRODUCER_FIELD;
import java.io.Serializable;
+import javax.enterprise.context.Dependent;
import javax.enterprise.context.spi.Contextual;
import javax.enterprise.context.spi.CreationalContext;
@@ -33,6 +35,7 @@
import org.jboss.weld.bean.proxy.ProxyFactory;
import org.jboss.weld.bootstrap.BeanDeployerEnvironment;
import org.jboss.weld.ejb.EJBApiAbstraction;
+import org.jboss.weld.exceptions.DefinitionException;
import org.jboss.weld.exceptions.IllegalStateException;
import org.jboss.weld.introspector.WeldField;
import org.jboss.weld.manager.BeanManagerImpl;
@@ -121,6 +124,10 @@
protected void checkEEResource()
{
+ if (!getScope().equals(Dependent.class))
+ {
+ throw new DefinitionException(NON_DEPENDENT_RESOURCE_PRODUCER_FIELD, this);
+ }
EJBApiAbstraction ejbApiAbstraction = beanManager.getServices().get(EJBApiAbstraction.class);
PersistenceApiAbstraction persistenceApiAbstraction = beanManager.getServices().get(PersistenceApiAbstraction.class);
WSApiAbstraction wsApiAbstraction = beanManager.getServices().get(WSApiAbstraction.class);
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 2010-08-05 13:59:35 UTC (rev 6912)
+++ core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/BeanMessage.java 2010-08-05 14:18:01 UTC (rev 6913)
@@ -136,6 +136,7 @@
@MessageId("000098") PRODUCER_METHOD_WITH_WILDCARD_RETURN_TYPE_MUST_BE_DEPENDENT,
@MessageId("000099") CANNOT_LOAD_CLASS,
@MessageId("001500") PROXY_DESERIALIZATION_FAILURE,
- @MessageId("001501") BEAN_INSTANCE_NOT_SET_ON_PROXY;
+ @MessageId("001501") BEAN_INSTANCE_NOT_SET_ON_PROXY,
+ @MessageId("001502") NON_DEPENDENT_RESOURCE_PRODUCER_FIELD;
}
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 2010-08-05 13:59:35 UTC (rev 6912)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/bean_en.properties 2010-08-05 14:18:01 UTC (rev 6913)
@@ -100,3 +100,4 @@
CANNOT_LOAD_CLASS=Cannot load class {0} during deserialization of proxy
PROXY_DESERIALIZATION_FAILURE=Failed to deserialize proxy object
BEAN_INSTANCE_NOT_SET_ON_PROXY=Method call requires a BeanInstance which has not been set for this proxy
+NON_DEPENDENT_RESOURCE_PRODUCER_FIELD=Resource producer field [{0}] must be @Dependent scoped
14 years, 6 months
Weld SVN: r6912 - core/trunk/impl/src/main/java/org/jboss/weld/util/collections.
by weld-commits@lists.jboss.org
Author: swd847
Date: 2010-08-05 09:59:35 -0400 (Thu, 05 Aug 2010)
New Revision: 6912
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/util/collections/ImmutableArraySet.java
Log:
ImmutableArraySet should be serializable
Modified: core/trunk/impl/src/main/java/org/jboss/weld/util/collections/ImmutableArraySet.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/collections/ImmutableArraySet.java 2010-08-05 13:36:10 UTC (rev 6911)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/collections/ImmutableArraySet.java 2010-08-05 13:59:35 UTC (rev 6912)
@@ -17,6 +17,7 @@
package org.jboss.weld.util.collections;
+import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
@@ -37,7 +38,7 @@
*
* @author David Allen
*/
-public class ImmutableArraySet<E> implements Set<E>
+public class ImmutableArraySet<E> implements Set<E>, Serializable
{
private Object[] elements;
14 years, 6 months
Weld SVN: r6911 - in core/trunk/impl/src/main: java/org/jboss/weld/logging/messages and 2 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-08-05 09:36:10 -0400 (Thu, 05 Aug 2010)
New Revision: 6911
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/event/ObserverMethodImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/UtilMessage.java
core/trunk/impl/src/main/java/org/jboss/weld/util/Beans.java
core/trunk/impl/src/main/resources/org/jboss/weld/messages/event_en.properties
core/trunk/impl/src/main/resources/org/jboss/weld/messages/util_en.properties
Log:
WELD-565
Modified: core/trunk/impl/src/main/java/org/jboss/weld/event/ObserverMethodImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/event/ObserverMethodImpl.java 2010-08-05 13:18:07 UTC (rev 6910)
+++ core/trunk/impl/src/main/java/org/jboss/weld/event/ObserverMethodImpl.java 2010-08-05 13:36:10 UTC (rev 6911)
@@ -266,7 +266,7 @@
@Override
public String toString()
{
- return id;
+ return observerMethod.toString();
}
public String getId()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/UtilMessage.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/UtilMessage.java 2010-08-05 13:18:07 UTC (rev 6910)
+++ core/trunk/impl/src/main/java/org/jboss/weld/logging/messages/UtilMessage.java 2010-08-05 13:36:10 UTC (rev 6911)
@@ -45,7 +45,6 @@
@MessageId("000806") TOO_MANY_PRE_DESTROY_METHODS,
@MessageId("000807") INITIALIZER_CANNOT_BE_PRODUCER,
@MessageId("000808") INITIALIZER_CANNOT_BE_DISPOSAL_METHOD,
- @MessageId("000809") INITIALIZER_CANNOT_BE_OBSERVER,
@MessageId("000810") QUALIFIER_ON_FINAL_FIELD,
@MessageId("000811") TOO_MANY_INITIALIZERS,
@MessageId("000812") AMBIGUOUS_CONSTRUCTOR,
Modified: core/trunk/impl/src/main/java/org/jboss/weld/util/Beans.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/Beans.java 2010-08-05 13:18:07 UTC (rev 6910)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/Beans.java 2010-08-05 13:36:10 UTC (rev 6911)
@@ -25,10 +25,10 @@
import static org.jboss.weld.logging.messages.BeanMessage.FOUND_ONE_PRE_DESTROY_METHOD;
import static org.jboss.weld.logging.messages.BeanMessage.FOUND_POST_CONSTRUCT_METHODS;
import static org.jboss.weld.logging.messages.BeanMessage.FOUND_PRE_DESTROY_METHODS;
+import static org.jboss.weld.logging.messages.EventMessage.INVALID_INITIALIZER;
import static org.jboss.weld.logging.messages.UtilMessage.AMBIGUOUS_CONSTRUCTOR;
import static org.jboss.weld.logging.messages.UtilMessage.ANNOTATION_NOT_QUALIFIER;
import static org.jboss.weld.logging.messages.UtilMessage.INITIALIZER_CANNOT_BE_DISPOSAL_METHOD;
-import static org.jboss.weld.logging.messages.UtilMessage.INITIALIZER_CANNOT_BE_OBSERVER;
import static org.jboss.weld.logging.messages.UtilMessage.INITIALIZER_CANNOT_BE_PRODUCER;
import static org.jboss.weld.logging.messages.UtilMessage.INITIALIZER_METHOD_IS_GENERIC;
import static org.jboss.weld.logging.messages.UtilMessage.INVALID_QUANTITY_INJECTABLE_FIELDS_AND_INITIALIZER_METHODS;
@@ -408,7 +408,7 @@
}
else if (method.getWeldParameters(Observes.class).size() > 0)
{
- throw new DefinitionException(INITIALIZER_CANNOT_BE_OBSERVER, method, type);
+ throw new DefinitionException(INVALID_INITIALIZER, method);
}
else if (method.isGeneric())
{
Modified: core/trunk/impl/src/main/resources/org/jboss/weld/messages/event_en.properties
===================================================================
--- core/trunk/impl/src/main/resources/org/jboss/weld/messages/event_en.properties 2010-08-05 13:18:07 UTC (rev 6910)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/event_en.properties 2010-08-05 13:36:10 UTC (rev 6911)
@@ -2,8 +2,8 @@
ASYNC_TX_FIRE=Sending event {0} asynchronously to transactional observer {1}
ASYNC_OBSERVER_FAILURE=Failure while notifying an observer of event {0}
PROXY_REQUIRED=Proxy required
-INVALID_SCOPED_CONDITIONAL_OBSERVER={0} is invalid because it is a conditional observer method and is declared by a @Dependent scoped bean
-MULTIPLE_EVENT_PARAMETERS={0} is invalid because it contains more than one event parameter annotated @Observes
-INVALID_DISPOSES_PARAMETER={0} cannot have any parameters annotated with @Disposes
-INVALID_PRODUCER={0} cannot be annotated with @Produces
-INVALID_INITIALIZER={0} cannot be annotated with @Initializer
+INVALID_SCOPED_CONDITIONAL_OBSERVER=Conditional observer method [{0}] cannot be declared by a @Dependent scoped bean
+MULTIPLE_EVENT_PARAMETERS=Observer method [{0}] cannot have more than one event parameter annotated @Observes
+INVALID_DISPOSES_PARAMETER=Observer method [{0}] cannot have a parameter annotated with @Disposes
+INVALID_PRODUCER=Observer method [{0}] cannot be annotated with @Produces
+INVALID_INITIALIZER=Observer method [{0}] cannot be annotated with @Inject; observer methods are automatically injection points
Modified: core/trunk/impl/src/main/resources/org/jboss/weld/messages/util_en.properties
===================================================================
--- core/trunk/impl/src/main/resources/org/jboss/weld/messages/util_en.properties 2010-08-05 13:18:07 UTC (rev 6910)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/util_en.properties 2010-08-05 13:36:10 UTC (rev 6911)
@@ -7,7 +7,6 @@
TOO_MANY_PRE_DESTROY_METHODS=Cannot have more than one pre destroy method annotated @PreDestroy for {0}
INITIALIZER_CANNOT_BE_PRODUCER=Initializer method {0} cannot be annotated @Produces on {1}
INITIALIZER_CANNOT_BE_DISPOSAL_METHOD=Initializer method {0} cannot have parameters annotated @Disposes on {1}
-INITIALIZER_CANNOT_BE_OBSERVER=Initializer method {0} cannot be annotated @Observes on {1}
QUALIFIER_ON_FINAL_FIELD=Cannot place qualifiers on final fields: {0}
TOO_MANY_INITIALIZERS=Cannot have more than one constructor annotated with @Initializer for {0}
AMBIGUOUS_CONSTRUCTOR=Cannot determine constructor to use for {0}. Possible constructors {1}
14 years, 6 months
Weld SVN: r6910 - in core/trunk: tests-arquillian/src/test/resources/org/jboss/weld/tests and 1 other directory.
by weld-commits@lists.jboss.org
Author: aslak
Date: 2010-08-05 09:18:07 -0400 (Thu, 05 Aug 2010)
New Revision: 6910
Added:
core/trunk/tests-arquillian/src/test/resources/org/jboss/weld/tests/ejb/
Removed:
core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/generic/
core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/
Log:
WELD-493 Converted ejb and interceptor tests to Arquillian
Copied: core/trunk/tests-arquillian/src/test/resources/org/jboss/weld/tests/ejb (from rev 6907, core/trunk/tests/src/test/resources/org/jboss/weld/tests/ejb)
14 years, 6 months
Weld SVN: r6909 - in core/trunk: tests/src/test/java/org/jboss/weld/tests/ejb/mdb and 10 other directories.
by weld-commits@lists.jboss.org
Author: aslak
Date: 2010-08-05 09:16:52 -0400 (Thu, 05 Aug 2010)
New Revision: 6909
Added:
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/Cow.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/ejb/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/generic/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/
Removed:
core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/Cow.java
core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java
core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java
core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java
core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java
core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/ejb/
core/trunk/tests/src/test/resources/org/jboss/weld/tests/ejb/
core/trunk/tests/src/test/resources/org/jboss/weld/tests/interceptors/ejb/
core/trunk/tests/src/test/resources/org/jboss/weld/tests/interceptors/hierarchical/
Modified:
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/ejb/EnterpriseBeanInterceptionTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/generic/SimpleWeldClassTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/InterceptorsWithHierarchyTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/SimpleWeldClassTest.java
Log:
WELD-493 Converted ejb and interceptor tests to Arquillian
Deleted: core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/Cow.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/Cow.java 2010-08-05 13:15:53 UTC (rev 6908)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/Cow.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -1,37 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., 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.tests.ejb;
-
-import javax.ejb.Stateful;
-
-@Stateful
-public class Cow
-{
-
- private boolean pinged;
-
- public boolean isPinged()
- {
- return pinged;
- }
-
- public void ping()
- {
- pinged = true;
- }
-
-}
Deleted: core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java 2010-08-05 13:15:53 UTC (rev 6908)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -1,40 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., 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.tests.ejb;
-
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.testharness.impl.packaging.IntegrationTest;
-import org.jboss.testharness.impl.packaging.Packaging;
-import org.jboss.testharness.impl.packaging.PackagingType;
-import org.jboss.weld.test.AbstractWeldTest;
-import org.testng.annotations.Test;
-
-@Artifact
-(a)Packaging(PackagingType.EAR)
-@IntegrationTest
-public class EJBTest extends AbstractWeldTest
-{
-
- @Test
- public void testNoInterface()
- {
- Cow cow = getReference(Cow.class);
- cow.ping();
- assert cow.isPinged();
- }
-
-}
Deleted: core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java 2010-08-05 13:15:53 UTC (rev 6908)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -1,51 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
-
-import javax.ejb.MessageDrivenContext;
-import javax.enterprise.context.ApplicationScoped;
-
-@ApplicationScoped
-public class Control
-{
- private volatile boolean messageDelivered;
- private volatile boolean contextSet;
-
- public boolean isMessageDelivered()
- {
- return messageDelivered;
- }
-
- public void setMessageDelivered(boolean messageDelivered)
- {
- this.messageDelivered = messageDelivered;
- }
-
- public void setContext(MessageDrivenContext context)
- {
- if (context != null)
- {
- contextSet = true;
- }
- }
-
- public boolean isContextSet()
- {
- return contextSet;
- }
-
-}
Deleted: core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java 2010-08-05 13:15:53 UTC (rev 6908)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -1,59 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
-
-import javax.jms.Queue;
-import javax.jms.QueueConnection;
-import javax.jms.QueueConnectionFactory;
-import javax.jms.QueueSender;
-import javax.jms.QueueSession;
-import javax.jms.Session;
-import javax.naming.InitialContext;
-
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.testharness.impl.packaging.IntegrationTest;
-import org.jboss.testharness.impl.packaging.Packaging;
-import org.jboss.testharness.impl.packaging.PackagingType;
-import org.jboss.weld.test.AbstractWeldTest;
-import org.testng.annotations.Test;
-
-@Artifact
-(a)Packaging(PackagingType.EAR)
-@IntegrationTest
-public class EJBTest extends AbstractWeldTest
-{
-
- public static final String MESSAGE = "Hello!";
-
- @Test(groups="broken")
- // TODO Need a way to deploy test-destinations-service.xml to JBoss AS
- // Port the test as broken
- public void testMdbUsable() throws Exception
- {
- InitialContext ctx = new InitialContext();
- QueueConnectionFactory factory = (QueueConnectionFactory) ctx.lookup("ConnectionFactory");
- QueueConnection connection = factory.createQueueConnection();
- QueueSession session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
- Queue queue = (Queue) ctx.lookup("queue/testQueue");
- QueueSender sender = session.createSender(queue);
- sender.send(session.createTextMessage(MESSAGE));
- Thread.sleep(1000);
- assert getReference(Control.class).isMessageDelivered();
- assert getReference(Control.class).isContextSet();
- }
-
-}
Deleted: core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java 2010-08-05 13:15:53 UTC (rev 6908)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -1,54 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
-
-import javax.annotation.Resource;
-import javax.ejb.ActivationConfigProperty;
-import javax.ejb.MessageDriven;
-import javax.ejb.MessageDrivenContext;
-import javax.inject.Inject;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.MessageListener;
-import javax.jms.TextMessage;
-
-@MessageDriven(activationConfig={
- @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
- @ActivationConfigProperty(propertyName="destination", propertyValue="queue/testQueue")
- })
-public class MilkMan implements MessageListener
-{
-
- @Inject Control control;
-
- @Resource
- private MessageDrivenContext context;
-
- public void onMessage(Message message)
- {
- try
- {
- control.setContext(context);
- control.setMessageDelivered(((TextMessage) message).getText().equals(EJBTest.MESSAGE));
- }
- catch (JMSException e)
- {
- throw new RuntimeException(e);
- }
- }
-
-}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/Cow.java (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/Cow.java)
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/Cow.java (rev 0)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/Cow.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc., 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.tests.ejb;
+
+import javax.ejb.Stateful;
+
+@Stateful
+public class Cow
+{
+
+ private boolean pinged;
+
+ public boolean isPinged()
+ {
+ return pinged;
+ }
+
+ public void ping()
+ {
+ pinged = true;
+ }
+
+}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java)
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java (rev 0)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/EJBTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc., 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.tests.ejb;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
+import org.jboss.weld.tests.category.Integration;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
+
+(a)Category(Integration.class)
+(a)RunWith(Arquillian.class)
+public class EJBTest
+{
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(EnterpriseArchive.class, "test.ear")
+ .addModule(
+ ShrinkWrap.create(BeanArchive.class)
+ .addPackage(EJBTest.class.getPackage())
+ );
+ }
+
+ @Test
+ public void testNoInterface(Cow cow)
+ {
+ cow.ping();
+ Assert.assertTrue(cow.isPinged());
+ }
+}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java)
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java (rev 0)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/Control.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
+
+import javax.ejb.MessageDrivenContext;
+import javax.enterprise.context.ApplicationScoped;
+
+@ApplicationScoped
+public class Control
+{
+ private volatile boolean messageDelivered;
+ private volatile boolean contextSet;
+
+ public boolean isMessageDelivered()
+ {
+ return messageDelivered;
+ }
+
+ public void setMessageDelivered(boolean messageDelivered)
+ {
+ this.messageDelivered = messageDelivered;
+ }
+
+ public void setContext(MessageDrivenContext context)
+ {
+ if (context != null)
+ {
+ contextSet = true;
+ }
+ }
+
+ public boolean isContextSet()
+ {
+ return contextSet;
+ }
+
+}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java)
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java (rev 0)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/EJBTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
+
+import javax.jms.Queue;
+import javax.jms.QueueConnection;
+import javax.jms.QueueConnectionFactory;
+import javax.jms.QueueSender;
+import javax.jms.QueueSession;
+import javax.jms.Session;
+import javax.naming.InitialContext;
+
+import junit.framework.Assert;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.EmptyAsset;
+import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
+import org.jboss.shrinkwrap.api.spec.JavaArchive;
+import org.jboss.weld.tests.category.Broken;
+import org.jboss.weld.tests.category.Integration;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
+
+(a)Category(Integration.class)
+(a)RunWith(Arquillian.class)
+public class EJBTest
+{
+ public static final String MESSAGE = "Hello!";
+
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(EnterpriseArchive.class, "test.ear")
+ .addModule(
+ ShrinkWrap.create(JavaArchive.class)
+ .addPackage(EJBTest.class.getPackage())
+ .addManifestResource(EmptyAsset.INSTANCE, "beans.xml")
+ //.addManifestResource(EJBTest.class.getPackage(), "test-destinations-service.xml", "test-destinations-service.xml")
+ );
+ }
+
+ @Category(Broken.class)
+ @Test
+ // TODO Need a way to deploy test-destinations-service.xml to JBoss AS
+ public void testMdbUsable(Control control) throws Exception
+ {
+ InitialContext ctx = new InitialContext();
+ QueueConnectionFactory factory = (QueueConnectionFactory) ctx.lookup("ConnectionFactory");
+ QueueConnection connection = factory.createQueueConnection();
+ QueueSession session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
+ Queue queue = (Queue) ctx.lookup("queue/testQueue");
+ QueueSender sender = session.createSender(queue);
+ sender.send(session.createTextMessage(MESSAGE));
+
+ // TODO: rewrite to use CountDownLatch, avoid Thread.sleep in tests
+ Thread.sleep(1000);
+ Assert.assertTrue(control.isMessageDelivered());
+ Assert.assertTrue(control.isContextSet());
+ }
+
+}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java)
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java (rev 0)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/ejb/mdb/MilkMan.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc., 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.tests.ejb.mdb;
+
+import javax.annotation.Resource;
+import javax.ejb.ActivationConfigProperty;
+import javax.ejb.MessageDriven;
+import javax.ejb.MessageDrivenContext;
+import javax.inject.Inject;
+import javax.jms.JMSException;
+import javax.jms.Message;
+import javax.jms.MessageListener;
+import javax.jms.TextMessage;
+
+@MessageDriven(activationConfig={
+ @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
+ @ActivationConfigProperty(propertyName="destination", propertyValue="queue/testQueue")
+ })
+public class MilkMan implements MessageListener
+{
+
+ @Inject Control control;
+
+ @Resource
+ private MessageDrivenContext context;
+
+ public void onMessage(Message message)
+ {
+ try
+ {
+ control.setContext(context);
+ control.setMessageDelivered(((TextMessage) message).getText().equals(EJBTest.MESSAGE));
+ }
+ catch (JMSException e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+
+}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/ejb (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/ejb)
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/ejb/EnterpriseBeanInterceptionTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/ejb/EnterpriseBeanInterceptionTest.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/ejb/EnterpriseBeanInterceptionTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -23,51 +23,66 @@
import javax.ejb.Timer;
import javax.enterprise.inject.spi.InterceptionType;
+import javax.inject.Inject;
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.testharness.impl.packaging.Packaging;
-import org.jboss.testharness.impl.packaging.PackagingType;
-import org.jboss.testharness.impl.packaging.jsr299.BeansXml;
+import junit.framework.Assert;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
import org.jboss.weld.bean.SessionBean;
import org.jboss.weld.bean.interceptor.InterceptorBindingsAdapter;
import org.jboss.weld.ejb.spi.InterceptorBindings;
-import org.jboss.weld.test.AbstractWeldTest;
-import org.testng.annotations.Test;
+import org.jboss.weld.manager.BeanManagerImpl;
+import org.junit.Test;
+import org.junit.runner.RunWith;
-@Artifact
-(a)Packaging(PackagingType.EAR)
-@BeansXml("beans.xml")
-public class EnterpriseBeanInterceptionTest extends AbstractWeldTest
+(a)RunWith(Arquillian.class)
+public class EnterpriseBeanInterceptionTest
{
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(EnterpriseArchive.class, "test.ear")
+ .addModule(
+ ShrinkWrap.create(BeanArchive.class)
+ .intercept(Goalkeeper.class, Defender.class, Referee.class)
+ .addPackage(EnterpriseBeanInterceptionTest.class.getPackage())
+ );
+ }
+
+ @Inject
+ private BeanManagerImpl beanManager;
- @Test(groups = { "interceptors" })
+ @Test
public void testInterceptors() throws Exception
{
- SessionBean<Ball> ballSessionBean = (SessionBean<Ball>)getCurrentManager().getBeans(Ball.class).iterator().next();
- InterceptorBindings interceptorBindings = new InterceptorBindingsAdapter(getCurrentManager().getCdiInterceptorsRegistry().getInterceptionModel(ballSessionBean.getType()));
+ SessionBean<Ball> ballSessionBean = (SessionBean<Ball>)beanManager.getBeans(Ball.class).iterator().next();
+ InterceptorBindings interceptorBindings = new InterceptorBindingsAdapter(beanManager.getCdiInterceptorsRegistry().getInterceptionModel(ballSessionBean.getType()));
List<javax.enterprise.inject.spi.Interceptor> interceptors =
new ArrayList<javax.enterprise.inject.spi.Interceptor>(interceptorBindings.getAllInterceptors());
- assert interceptors.size() == 3;
+ Assert.assertEquals(3, interceptors.size());
List<Class<?>> expectedInterceptors = Arrays.<Class<?>>asList(Goalkeeper.class, Defender.class, Referee.class);
- assert expectedInterceptors.contains(interceptors.get(0).getBeanClass());
- assert expectedInterceptors.contains(interceptors.get(1).getBeanClass());
- assert expectedInterceptors.contains(interceptors.get(2).getBeanClass());
+ Assert.assertTrue(expectedInterceptors.contains(interceptors.get(0).getBeanClass()));
+ Assert.assertTrue(expectedInterceptors.contains(interceptors.get(1).getBeanClass()));
+ Assert.assertTrue(expectedInterceptors.contains(interceptors.get(2).getBeanClass()));
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, ballSessionBean.getType().getMethod("shoot")).size() == 0;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("shoot")).size() == 1;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("shoot")).get(0).getBeanClass().equals(Goalkeeper.class);
+ Assert.assertEquals(0, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, ballSessionBean.getType().getMethod("shoot")).size());
+ Assert.assertEquals(1, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("shoot")).size());
+ Assert.assertEquals(Goalkeeper.class, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("shoot")).get(0).getBeanClass());
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, ballSessionBean.getType().getMethod("pass")).size() == 0;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("pass")).size() == 1;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("pass")).get(0).getBeanClass().equals(Defender.class);
+ Assert.assertEquals(0, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, ballSessionBean.getType().getMethod("pass")).size());
+ Assert.assertEquals(1, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("pass")).size());
+ Assert.assertEquals(Defender.class, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, ballSessionBean.getType().getMethod("pass")).get(0).getBeanClass());
Method finishGameMethod = ballSessionBean.getType().getMethod("finishGame", Timer.class);
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, finishGameMethod).size() == 0;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, finishGameMethod).size() == 1;
- assert interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, finishGameMethod).get(0).getBeanClass().equals(Referee.class);
-
+ Assert.assertEquals(0, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_INVOKE, finishGameMethod).size());
+ Assert.assertEquals(1, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, finishGameMethod).size());
+ Assert.assertEquals(Referee.class, interceptorBindings.getMethodInterceptors(InterceptionType.AROUND_TIMEOUT, finishGameMethod).get(0).getBeanClass());
}
-
}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/generic (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/generic)
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/generic/SimpleWeldClassTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/generic/SimpleWeldClassTest.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/generic/SimpleWeldClassTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -19,32 +19,49 @@
import java.util.Collection;
import java.util.List;
-import org.jboss.testharness.impl.packaging.Artifact;
+import junit.framework.Assert;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.introspector.WeldMethod;
import org.jboss.weld.introspector.jlr.WeldClassImpl;
import org.jboss.weld.metadata.TypeStore;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.test.AbstractWeldTest;
+import org.jboss.weld.tests.category.Broken;
import org.jboss.weld.util.Beans;
-import org.testng.annotations.Test;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
/**
* @author Marius Bogoevici
*/
-@Artifact
-public class SimpleWeldClassTest extends AbstractWeldTest
+(a)RunWith(Arquillian.class)
+public class SimpleWeldClassTest
{
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(BeanArchive.class)
+ .addPackage(SimpleWeldClassTest.class.getPackage());
+ }
- @Test(groups = "broken")
- // Aslak Issue is still open, so test can be ported as is
+ /*
+ * description = "WELD-568"
+ */
+ @Category(Broken.class)
+ @Test
public void testWeldClassForGenericSuperclass()
{
WeldClass<StringProcessor> weldClass = WeldClassImpl.of(StringProcessor.class, new ClassTransformer(new TypeStore()));
- Collection methods = weldClass.getWeldMethods();
+ Collection<WeldMethod<?, ?>> methods = weldClass.getWeldMethods();
//assert methods.size() == 2;
List<WeldMethod<?,?>> interceptableMethods = Beans.getInterceptableMethods(weldClass);
- assert interceptableMethods.size() == 4;
+ Assert.assertEquals(4, interceptableMethods.size());
}
}
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical (from rev 6907, core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/hierarchical)
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/InterceptorsWithHierarchyTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/InterceptorsWithHierarchyTest.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/InterceptorsWithHierarchyTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -16,33 +16,41 @@
*/
package org.jboss.weld.tests.interceptors.hierarchical;
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.testharness.impl.packaging.jsr299.BeansXml;
-import org.jboss.weld.test.AbstractWeldTest;
-import org.testng.Assert;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.weld.tests.category.Broken;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
/**
* @author Marius Bogoevici
*/
-@Artifact
-@BeansXml("beans.xml")
-public class InterceptorsWithHierarchyTest extends AbstractWeldTest
+(a)RunWith(Arquillian.class)
+public class InterceptorsWithHierarchyTest
{
- @BeforeClass
- public static void initialize()
+ @Deployment
+ public static Archive<?> deploy()
{
- Defender.invocationsCount = 0;
+ return ShrinkWrap.create(BeanArchive.class)
+ .intercept(Defender.class)
+ .addPackage(InterceptorsWithHierarchyTest.class.getPackage());
}
- @Test(groups = "broken")
- // Aslak Issue is still open, so test can be ported as is
- public void testInterceptorsWithHierarchy()
+ /*
+ * description = "WELD-568"
+ */
+ @Category(Broken.class)
+ @Test
+ public void testInterceptorsWithHierarchy(Attacker player)
{
- Attacker player = this.getReference(Attacker.class);
+ Defender.invocationsCount = 0;
player.cloneMe();
- Assert.assertEquals(Defender.invocationsCount, 1);
+ Assert.assertEquals(1, Defender.invocationsCount);
}
}
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/SimpleWeldClassTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/SimpleWeldClassTest.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/interceptors/hierarchical/SimpleWeldClassTest.java 2010-08-05 13:16:52 UTC (rev 6909)
@@ -19,32 +19,48 @@
import java.util.Collection;
import java.util.List;
-import org.jboss.testharness.impl.packaging.Artifact;
+import junit.framework.Assert;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.introspector.WeldMethod;
import org.jboss.weld.introspector.jlr.WeldClassImpl;
import org.jboss.weld.metadata.TypeStore;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.test.AbstractWeldTest;
+import org.jboss.weld.tests.category.Broken;
import org.jboss.weld.util.Beans;
-import org.testng.annotations.Test;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
/**
* @author Marius Bogoevici
*/
-@Artifact
-public class SimpleWeldClassTest extends AbstractWeldTest
+(a)RunWith(Arquillian.class)
+public class SimpleWeldClassTest
{
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(BeanArchive.class)
+ .addPackage(InterceptorsWithHierarchyTest.class.getPackage());
+ }
- @Test(groups = "broken")
- // Aslak Issue is still open, so test can be ported as is
+ /*
+ * description = "WELD-568"
+ */
+ @Category(Broken.class)
+ @Test
public void testWeldClassForCovariantReturnType()
{
WeldClass<Attacker> weldClass = WeldClassImpl.of(Attacker.class, new ClassTransformer(new TypeStore()));
- Collection methods = weldClass.getWeldMethods();
- assert methods.size() == 4;
+ Collection<WeldMethod<?, ?>> methods = weldClass.getWeldMethods();
+ Assert.assertEquals(4, methods.size());
List<WeldMethod<?, ?>> interceptableMethods = Beans.getInterceptableMethods(weldClass);
- assert interceptableMethods.size() == 4;
+ Assert.assertEquals(4, interceptableMethods.size());
}
-
}
14 years, 6 months
Weld SVN: r6908 - in core/trunk/impl/src/main: java/org/jboss/weld/bean/builtin and 7 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-08-05 09:15:53 -0400 (Thu, 05 Aug 2010)
New Revision: 6908
Added:
core/trunk/impl/src/main/java/org/jboss/weld/util/reflection/Formats.java
Removed:
core/trunk/impl/src/main/java/org/jboss/weld/util/Names.java
Modified:
core/trunk/impl/src/main/java/org/jboss/weld/bean/DecoratorImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/DisposalMethod.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/InterceptorImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/ManagedBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/NewManagedBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/NewSessionBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerField.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerMethod.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/SessionBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/AbstractFacade.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/BeanManagerBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/EventBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ExtensionBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InjectionPointBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.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/DefaultValidatorBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorFactoryBean.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/builtin/ee/PrincipalBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/UserTransactionBean.java
core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/Validator.java
core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java
core/trunk/impl/src/main/java/org/jboss/weld/event/EventImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java
core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java
core/trunk/impl/src/main/resources/org/jboss/weld/messages/validator_en.properties
Log:
WELD-542
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/DecoratorImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/DecoratorImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/DecoratorImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -37,10 +37,7 @@
import javax.enterprise.inject.spi.Decorator;
import javax.inject.Inject;
-import org.jboss.weld.bean.proxy.AbstractDecoratorMethodHandler;
import org.jboss.weld.bean.proxy.DecoratorProxyFactory;
-import org.jboss.weld.bean.proxy.ProxyFactory;
-import org.jboss.weld.bean.proxy.TargetBeanInstance;
import org.jboss.weld.bootstrap.BeanDeployerEnvironment;
import org.jboss.weld.exceptions.DefinitionException;
import org.jboss.weld.injection.MethodInjectionPoint;
@@ -50,11 +47,11 @@
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.introspector.WeldConstructor;
import org.jboss.weld.introspector.WeldMethod;
-import org.jboss.weld.introspector.jlr.WeldClassImpl;
import org.jboss.weld.introspector.jlr.WeldConstructorImpl;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.resources.ClassTransformer;
import org.jboss.weld.util.Decorators;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.Reflections;
public class DecoratorImpl<T> extends ManagedBean<T> implements WeldDecorator<T>
@@ -284,4 +281,10 @@
{
return decoratedMethodSignatures;
}
+
+ @Override
+ public String toString()
+ {
+ return "Decorator [" + getBeanClass().toString() + "] decorates [" + Formats.formatTypes(getDecoratedTypes()) + "] with delegate type [" + Formats.formatType(getDelegateType()) + "] and delegate qualifiers [" + Formats.formatAnnotations(getDelegateQualifiers()) + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/DisposalMethod.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/DisposalMethod.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/DisposalMethod.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -268,5 +268,11 @@
{
return Collections.emptySet();
}
+
+ @Override
+ public String toString()
+ {
+ return "Disposer method [" + getDisposesParameter().getDeclaringCallable() + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/InterceptorImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/InterceptorImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/InterceptorImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -37,6 +37,7 @@
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.util.Beans;
+import org.jboss.weld.util.reflection.Formats;
/**
* @author Marius Bogoevici
@@ -114,4 +115,9 @@
// Lifecycle callbacks not supported
}
+ @Override
+ public String toString()
+ {
+ return "Interceptor [" + getBeanClass() + " intercepts " + Formats.formatAnnotations(getInterceptorBindings()) + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/ManagedBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/ManagedBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/ManagedBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -69,6 +69,7 @@
import org.jboss.weld.serialization.spi.helpers.SerializableContextual;
import org.jboss.weld.util.AnnotatedTypes;
import org.jboss.weld.util.Beans;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.Reflections;
import org.slf4j.cal10n.LocLogger;
import org.slf4j.ext.XLogger;
@@ -595,5 +596,11 @@
}
return instance;
}
+
+ @Override
+ public String toString()
+ {
+ return "Managed Bean [" + getBeanClass().toString() + "] with qualifiers [" + Formats.formatAnnotations(getQualifiers()) + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/NewManagedBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/NewManagedBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/NewManagedBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -124,4 +124,10 @@
return false;
}
+ @Override
+ public String toString()
+ {
+ return "@New " + super.toString();
+ }
+
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/NewSessionBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/NewSessionBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/NewSessionBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -131,4 +131,10 @@
{
// No - op
}
+
+ @Override
+ public String toString()
+ {
+ return "@New " + super.toString();
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerField.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerField.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerField.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -35,6 +35,7 @@
import org.jboss.weld.introspector.WeldField;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.util.AnnotatedTypes;
+import org.jboss.weld.util.reflection.Formats;
import org.slf4j.cal10n.LocLogger;
/**
@@ -198,5 +199,11 @@
{
return false;
}
+
+ @Override
+ public String toString()
+ {
+ return "Producer Field [" + Formats.formatType(getWeldAnnotated().getBaseType()) + "] with qualifiers [" + Formats.formatAnnotations(getQualifiers()) + "] declared as [" + getWeldAnnotated() + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerMethod.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerMethod.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/ProducerMethod.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -41,6 +41,7 @@
import org.jboss.weld.introspector.WeldParameter;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.util.AnnotatedTypes;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.SecureReflections;
/**
@@ -299,5 +300,11 @@
{
return id;
}
+
+ @Override
+ public String toString()
+ {
+ return "Producer Method [" + Formats.formatType(getWeldAnnotated().getBaseType()) + "] with qualifiers [" + Formats.formatAnnotations(getQualifiers()) + "] declared as [" + getWeldAnnotated() + "]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/SessionBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/SessionBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/SessionBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -76,6 +76,7 @@
import org.jboss.weld.serialization.spi.helpers.SerializableContextual;
import org.jboss.weld.util.AnnotatedTypes;
import org.jboss.weld.util.Beans;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
import org.jboss.weld.util.reflection.SecureReflections;
@@ -469,5 +470,11 @@
getBeanManager().getServices().get(EjbServices.class).registerInterceptors(getEjbDescriptor().delegate(), new InterceptorBindingsAdapter(model));
}
}
+
+ @Override
+ public String toString()
+ {
+ return "Session bean [" + getBeanClass() + " with qualifiers [" + Formats.formatAnnotations(getQualifiers()) + "]; local interfaces are [" + Formats.formatBusinessInterfaceDescriptors(getEjbDescriptor().getLocalBusinessInterfaces()) +"]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/AbstractFacade.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/AbstractFacade.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/AbstractFacade.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -84,20 +84,8 @@
{
return injectionPoint;
}
-
- /**
- * Gets a string representation
- *
- * @return A string representation
- */
@Override
- public String toString()
- {
- return "Abstract facade implmentation";
- }
-
- @Override
public boolean equals(Object obj)
{
if (obj instanceof AbstractFacade<?, ?>)
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/BeanManagerBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/BeanManagerBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/BeanManagerBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -59,7 +59,7 @@
@Override
public String toString()
{
- return "Built-in javax.inject.manager.Manager bean";
+ return "Built-in Bean [javax.enterprise.inject.spi.BeanManager] with qualifiers [@Default]";
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/EventBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/EventBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/EventBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -76,7 +76,7 @@
@Override
public String toString()
{
- return "Built-in implicit javax.event.Event bean";
+ return "Implicit Bean [javax.enterprise.event.Event] with qualifiers [@Default]";
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ExtensionBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ExtensionBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ExtensionBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -86,5 +86,11 @@
{
return ApplicationScoped.class;
}
+
+ @Override
+ public String toString()
+ {
+ return "Extension Bean [" + getType().toString() + "] with qualifiers [@Default]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InjectionPointBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InjectionPointBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InjectionPointBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -76,7 +76,7 @@
@Override
public String toString()
{
- return "Built-in javax.inject.manager.InjectionPoint bean";
+ return "Implicit Bean [javax.enterprise.inject.spi.InjectionPoint] with qualifiers [@Default]";
}
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -76,7 +76,7 @@
@Override
public String toString()
{
- return "Built-in implicit javax.inject.Instance bean";
+ return "Implicit Bean [javax.enterprise.inject.Instance] with qualifiers [@Default]";
}
}
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 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -41,7 +41,7 @@
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.resolution.ResolvableBuilder;
import org.jboss.weld.util.Beans;
-import org.jboss.weld.util.Names;
+import org.jboss.weld.util.reflection.Formats;
/**
* Helper implementation for Instance for getting instances
@@ -92,7 +92,7 @@
@Override
public String toString()
{
- return new StringBuilder().append(Names.toString(getQualifiers())).append(" Instance<").append(getType()).append(">").toString();
+ return Formats.formatAnnotations(getQualifiers()) + " Instance<" + Formats.formatType(getType()) + ">";
}
private Set<Bean<?>> getBeans()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -54,17 +54,17 @@
}
}
- @Override
- public String toString()
- {
- return "Built-in Validator bean";
- }
-
}
public DefaultValidatorBean(BeanManagerImpl manager)
{
super(Validator.class, new ValidatorCallable(manager), manager);
}
+
+ @Override
+ public String toString()
+ {
+ return "Built-in Bean [javax.validator.Validator] with qualifiers [@Default]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorFactoryBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorFactoryBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/DefaultValidatorFactoryBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -53,17 +53,17 @@
}
}
- @Override
- public String toString()
- {
- return "Built-in ValidatorFactory bean";
- }
-
}
public DefaultValidatorFactoryBean(BeanManagerImpl beanManager)
{
super(ValidatorFactory.class, new ValidatorFactoryCallable(beanManager), beanManager);
}
+
+ @Override
+ public String toString()
+ {
+ return "Built-in Bean [javax.validator.ValidatorFactory] with qualifiers [@Default]";
+ }
}
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 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/EEResourceProducerField.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -56,7 +56,7 @@
private transient T instance;
private final CreationalContext<T> creationalContext;
- public EEResourceCallable(BeanManagerImpl beanManager, ProducerField<?, T> producerField, CreationalContext<T> creationalContext)
+ private EEResourceCallable(BeanManagerImpl beanManager, ProducerField<?, T> producerField, CreationalContext<T> creationalContext)
{
super(beanManager);
this.beanId = producerField.getId();
@@ -86,7 +86,7 @@
@Override
public String toString()
{
- return beanId;
+ return instance == null ? "null" : instance.toString();
}
}
@@ -157,5 +157,11 @@
{
return true;
}
+
+ @Override
+ public String toString()
+ {
+ return "Resource " + super.toString();
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/PrincipalBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/PrincipalBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/PrincipalBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -52,12 +52,6 @@
throw new IllegalStateException(SECURITY_SERVICES_NOT_AVAILABLE);
}
}
-
- @Override
- public String toString()
- {
- return "Built-in Principal bean";
- }
}
@@ -65,5 +59,11 @@
{
super(Principal.class, new PrincipalCallable(beanManager), beanManager);
}
+
+ @Override
+ public String toString()
+ {
+ return "Built-in Bean [java.security.Principal] with qualifiers [@Default]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/UserTransactionBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/UserTransactionBean.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/ee/UserTransactionBean.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -53,17 +53,17 @@
}
}
- @Override
- public String toString()
- {
- return "Built-in UserTransaction bean";
- }
-
}
public UserTransactionBean(BeanManagerImpl beanManager)
{
super(UserTransaction.class, new UserTransactionCallable(beanManager), beanManager);
}
+
+ @Override
+ public String toString()
+ {
+ return "Built-in Bean [javax.transaction.UserTransaction] with qualifiers [@Default]";
+ }
}
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/Validator.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/Validator.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/Validator.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -59,7 +59,6 @@
import java.lang.reflect.TypeVariable;
import java.lang.reflect.WildcardType;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
@@ -103,8 +102,8 @@
import org.jboss.weld.metadata.cache.MetaAnnotationStore;
import org.jboss.weld.serialization.spi.helpers.SerializableContextual;
import org.jboss.weld.util.Beans;
-import org.jboss.weld.util.Names;
import org.jboss.weld.util.Proxies;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.Reflections;
import org.slf4j.cal10n.LocLogger;
@@ -289,11 +288,11 @@
Set<?> resolvedBeans = beanManager.getBeanResolver().resolve(beanManager.getBeans(ij));
if (!isInjectionPointSatisfied(ij, resolvedBeans, beanManager))
{
- throw new DeploymentException(INJECTION_POINT_HAS_UNSATISFIED_DEPENDENCIES, ij, Names.toString(bindings), Names.toString(ij.getType()));
+ throw new DeploymentException(INJECTION_POINT_HAS_UNSATISFIED_DEPENDENCIES, ij, Formats.formatAnnotations(bindings), Formats.formatType(ij.getType()));
}
if (resolvedBeans.size() > 1 && !ij.isDelegate())
{
- throw new DeploymentException(INJECTION_POINT_HAS_AMBIGUOUS_DEPENDENCIES, ij, Arrays.toString(bindings) + "; Possible dependencies: " + resolvedBeans);
+ throw new DeploymentException(INJECTION_POINT_HAS_AMBIGUOUS_DEPENDENCIES, ij, Formats.formatAnnotations(bindings), Formats.formatType(ij.getType()), resolvedBeans);
}
// Account for the case this is disabled decorator
if (!resolvedBeans.isEmpty())
Modified: core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -94,8 +94,8 @@
import org.jboss.weld.servlet.ServletApiAbstraction;
import org.jboss.weld.servlet.api.ServletServices;
import org.jboss.weld.transaction.spi.TransactionServices;
-import org.jboss.weld.util.Names;
import org.jboss.weld.util.collections.Arrays2;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.serviceProvider.DefaultServiceLoaderFactory;
import org.jboss.weld.util.serviceProvider.ServiceLoaderFactory;
import org.jboss.weld.ws.WSApiAbstraction;
@@ -225,7 +225,7 @@
static
{
- loggerFactory().getLogger(VERSION).info(VersionMessage.VERSION, Names.version(WeldBootstrap.class.getPackage()));
+ loggerFactory().getLogger(VERSION).info(VersionMessage.VERSION, Formats.version(WeldBootstrap.class.getPackage()));
}
// The Bean manager
Modified: core/trunk/impl/src/main/java/org/jboss/weld/event/EventImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/event/EventImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/event/EventImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -37,8 +37,8 @@
import org.jboss.weld.literal.DefaultLiteral;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.util.Beans;
-import org.jboss.weld.util.Names;
import org.jboss.weld.util.Observers;
+import org.jboss.weld.util.reflection.Formats;
/**
* Implementation of the Event interface
@@ -86,7 +86,7 @@
@Override
public String toString()
{
- return new StringBuilder().append(Names.toString(getQualifiers())).append(" Event<").append(getType()).append(">").toString();
+ return Formats.formatAnnotations(getQualifiers()) + " Event<" + Formats.formatType(getType()) + ">";
}
public void fire(T event)
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -47,9 +47,9 @@
import org.jboss.weld.introspector.WeldField;
import org.jboss.weld.introspector.WeldMethod;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.util.Names;
import org.jboss.weld.util.collections.ArraySetSupplier;
import org.jboss.weld.util.collections.ImmutableArraySet;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
import org.jboss.weld.util.reflection.Reflections;
import org.jboss.weld.util.reflection.SecureReflections;
@@ -579,7 +579,7 @@
@Override
public String toString()
{
- return Names.toString(this);
+ return Formats.formatModifiers(getJavaClass().getModifiers()) + Formats.formatAnnotations(getAnnotations()) + " class " + getName() + Formats.formatActualTypeArguments(getActualTypeArguments());
}
public String getSimpleName()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldConstructorImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -40,7 +40,7 @@
import org.jboss.weld.logging.messages.ReflectionMessage;
import org.jboss.weld.manager.BeanManagerImpl;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.util.Names;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
import org.jboss.weld.util.reflection.Reflections;
import org.jboss.weld.util.reflection.SecureReflections;
@@ -293,7 +293,7 @@
@Override
public String toString()
{
- return Names.toString(this);
+ return "[constructor] " + Formats.addSpaceIfNeeded(Formats.formatAnnotations(getAnnotations())) + Formats.addSpaceIfNeeded(Formats.formatModifiers(getJavaMember().getModifiers())) + getDeclaringType().getName() + Formats.formatAsFormalParameterList(getWeldParameters());
}
public ConstructorSignature getSignature()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldFieldImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -30,7 +30,7 @@
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.introspector.WeldField;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.util.Names;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
import org.jboss.weld.util.reflection.SecureReflections;
@@ -133,7 +133,7 @@
@Override
public String toString()
{
- return Names.toString(this);
+ return "[field] " + Formats.addSpaceIfNeeded(Formats.formatAnnotations(getAnnotations())) + Formats.addSpaceIfNeeded(Formats.formatModifiers(getJavaMember().getModifiers())) + getDeclaringType().getName() + "." + getName();
}
public boolean isGeneric()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldMethodImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -37,7 +37,7 @@
import org.jboss.weld.introspector.WeldParameter;
import org.jboss.weld.logging.messages.ReflectionMessage;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.util.Names;
+import org.jboss.weld.util.reflection.Formats;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
import org.jboss.weld.util.reflection.Reflections;
import org.jboss.weld.util.reflection.SecureReflections;
@@ -214,7 +214,7 @@
@Override
public String toString()
{
- return Names.toString(this);
+ return "[method] " + Formats.addSpaceIfNeeded(Formats.formatAnnotations(method.getAnnotations())) + Formats.addSpaceIfNeeded(Formats.formatModifiers(getJavaMember().getModifiers())) + getDeclaringType().getName() + "." + getName() + Formats.formatAsFormalParameterList(getWeldParameters());
}
public MethodSignature getSignature()
Modified: core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/introspector/jlr/WeldParameterImpl.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -30,7 +30,6 @@
import org.jboss.weld.introspector.WeldClass;
import org.jboss.weld.introspector.WeldParameter;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.util.Names;
import org.jboss.weld.util.reflection.HierarchyDiscovery;
/**
@@ -140,7 +139,7 @@
@Override
public String toString()
{
- return Names.toString(this);
+ return "[parameter " + (getPosition() + 1) + "] of "+ getDeclaringWeldCallable().toString();
}
public AnnotatedCallable<X> getDeclaringCallable()
Deleted: core/trunk/impl/src/main/java/org/jboss/weld/util/Names.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/Names.java 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/Names.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -1,332 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat, Inc., 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.util;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Member;
-import java.lang.reflect.Modifier;
-import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.jboss.weld.introspector.WeldCallable;
-import org.jboss.weld.introspector.WeldClass;
-import org.jboss.weld.introspector.WeldConstructor;
-import org.jboss.weld.introspector.WeldField;
-import org.jboss.weld.introspector.WeldMethod;
-import org.jboss.weld.introspector.WeldParameter;
-import org.jboss.weld.util.reflection.Reflections;
-
-/**
- * Utility class to produce friendly names e.g. for debugging
- *
- * @author Pete Muir
- * @author Nicklas Karlsson
- *
- */
-public class Names
-{
- // Pattern for recognizing strings with leading capital letter
- private static Pattern CAPITAL_LETTERS = Pattern.compile("\\p{Upper}{1}\\p{Lower}*");
-
- /**
- * Gets a string representation of the scope type annotation
- *
- * @param scopeType The scope type
- * @return A string representation
- */
- public static String scopeTypeToString(Class<? extends Annotation> scopeType)
- {
- StringBuilder result = new StringBuilder();
- if (scopeType != null)
- {
- String scopeName = scopeType.getSimpleName();
- Matcher matcher = CAPITAL_LETTERS.matcher(scopeName);
- int i = 0;
- while (matcher.find())
- {
- String name = matcher.group();
- if (i > 0)
- {
- name = name.toLowerCase();
- }
- result.append(name).append(" ");
- i++;
- }
- }
- return result.toString();
- }
-
- public static String toString(Type baseType)
- {
- return new StringBuilder().append(Reflections.getRawType(baseType).getSimpleName()).append(toString(Reflections.getActualTypeArguments(baseType))).toString();
-
- }
-
- public static String toString(WeldClass<?> clazz)
- {
- return new StringBuilder().append(modifiersToString(clazz.getJavaClass().getModifiers())).append(toString(clazz.getAnnotations())).append(" class ").append(clazz.getName()).append(toString(clazz.getActualTypeArguments())).toString().trim();
- }
-
- public static String toString(WeldField<?, ?> field)
- {
- return new StringBuilder().append("[field] ").append(addSpaceIfNeeded(toString(field.getAnnotations()))).append(addSpaceIfNeeded(modifiersToString(field.getJavaMember().getModifiers()))).append(field.getDeclaringType().getName()).append(".").append(field.getName()).toString().trim();
- }
-
- public static String toString(WeldCallable<?, ?, ? extends Member> callable)
- {
- if (callable instanceof WeldMethod<?, ?>)
- {
- return toString((WeldMethod<?, ?>) callable);
- }
- else if (callable instanceof WeldConstructor<?>)
- {
- return toString((WeldConstructor<?>) callable);
- }
- else
- {
- throw new IllegalArgumentException("Unable to produce a toString representation of classes of type " + callable.getClass().getName());
- }
- }
-
- public static String toString(WeldMethod<?, ?> method)
- {
- return new StringBuilder().append("[method] ").append(addSpaceIfNeeded(toString(method.getAnnotations()))).append(addSpaceIfNeeded(modifiersToString(method.getJavaMember().getModifiers()))).append(method.getDeclaringType().getName()).append(".").append(method.getName()).append(parametersToTypeString(method.getWeldParameters())).toString().trim();
- }
-
- public static String toString(WeldConstructor<?> constructor)
- {
- return new StringBuilder().append("[constructor] ").append(addSpaceIfNeeded(toString(constructor.getAnnotations()))).append(addSpaceIfNeeded(modifiersToString(constructor.getJavaMember().getModifiers()))).append(constructor.getDeclaringType().getName()).append(parametersToTypeString(constructor.getWeldParameters())).toString().trim();
- }
-
- private static String addSpaceIfNeeded(String string)
- {
- if (string.length() > 0)
- {
- return new StringBuilder().append(string).append(" ").toString();
- }
- else
- {
- return string;
- }
- }
-
-
- private static String parametersToTypeString(Iterable<? extends WeldParameter<?, ?>> parameters)
- {
- StringBuilder stringBuilder = new StringBuilder();
- stringBuilder.append("(");
- int i = 0;
- for (WeldParameter<?, ?> parameter : parameters)
- {
- if (i > 0)
- {
- stringBuilder.append(", ");
- }
- stringBuilder.append(toString(parameter.getBaseType()));
- i++;
- }
- return stringBuilder.append(")").toString();
- }
-
- public static String toString(WeldParameter<?, ?> parameter)
- {
- return new StringBuilder().append("[parameter ").append(parameter.getPosition() + 1).append("] of ").append(toString(parameter.getDeclaringWeldCallable())).toString();
- }
-
- private static String modifiersToString(int modifiers)
- {
- return iterableToString(parseModifiers(modifiers), " ");
- }
-
- private static String iterableToString(Iterable<?> items, String delimiter)
- {
- StringBuilder stringBuilder = new StringBuilder();
- int i = 0;
- for (Object item : items)
- {
- if (i > 0)
- {
- stringBuilder.append(delimiter);
- }
- stringBuilder.append(item);
- i++;
- }
- return stringBuilder.toString();
- }
-
- /**
- * Parses a reflection modifier to a list of string
- *
- * @param modifier The modifier to parse
- * @return The resulting string list
- */
- private static List<String> parseModifiers(int modifier)
- {
- List<String> modifiers = new ArrayList<String>();
- if (Modifier.isPrivate(modifier))
- {
- modifiers.add("private");
- }
- if (Modifier.isProtected(modifier))
- {
- modifiers.add("protected");
- }
- if (Modifier.isPublic(modifier))
- {
- modifiers.add("public");
- }
- if (Modifier.isAbstract(modifier))
- {
- modifiers.add("abstract");
- }
- if (Modifier.isFinal(modifier))
- {
- modifiers.add("final");
- }
- if (Modifier.isNative(modifier))
- {
- modifiers.add("native");
- }
- if (Modifier.isStatic(modifier))
- {
- modifiers.add("static");
- }
- if (Modifier.isStrict(modifier))
- {
- modifiers.add("strict");
- }
- if (Modifier.isSynchronized(modifier))
- {
- modifiers.add("synchronized");
- }
- if (Modifier.isTransient(modifier))
- {
- modifiers.add("transient");
- }
- if (Modifier.isVolatile(modifier))
- {
- modifiers.add("volatile");
- }
- if (Modifier.isInterface(modifier))
- {
- modifiers.add("interface");
- }
- return modifiers;
- }
-
- public static String toString(Type[] actualTypeArguments)
- {
- if (actualTypeArguments.length == 0)
- {
- return "";
- }
- StringBuilder buffer = new StringBuilder();
- int i = 0;
- buffer.append("<");
- for (Type type : actualTypeArguments)
- {
- if (i > 0)
- {
- buffer.append(", ");
- }
- if (type instanceof Class<?>)
- {
- buffer.append(((Class<?>) type).getSimpleName());
- }
- else
- {
- buffer.append(type.toString());
- }
- i++;
- }
- buffer.append(">");
- return buffer.toString();
- }
-
- public static String toString(Iterable<Annotation> annotations)
- {
- StringBuilder builder = new StringBuilder();
- for (Annotation annotation : annotations)
- {
- builder.append(" ");
- builder.append("@").append(annotation.annotationType().getSimpleName());
- }
- return builder.toString().trim();
- }
-
- /**
- * Gets a string representation from an array of annotations
- *
- * @param annotations The annotations
- * @return The string representation
- */
- public static String toString(Annotation[] annotations)
- {
- return toString(Arrays.asList(annotations));
- }
-
- public static String version(Package pkg)
- {
- if (pkg == null)
- {
- throw new IllegalArgumentException("Package can not be null");
- }
- else
- {
- return version(pkg.getImplementationVersion());
- }
- }
-
- public static String version(String version)
- {
- if (version != null)
- {
- StringBuilder builder = new StringBuilder();
- if (version.indexOf(".") > 0)
- {
- builder.append(version.substring(0, version.indexOf("."))).append(".");
- version = version.substring(version.indexOf(".") + 1);
- }
- if (version.indexOf(".") > 0)
- {
- builder.append(version.substring(0, version.indexOf("."))).append(".");
- version = version.substring(version.indexOf(".") + 1);
- }
- if (version.indexOf("-") > 0)
- {
- builder.append(version.substring(0, version.indexOf("-"))).append(" (");
- builder.append(version.substring(version.indexOf("-") + 1)).append(")");
- }
- else if (version.indexOf(".") > 0)
- {
- builder.append(version.substring(0, version.indexOf("."))).append(" (");
- builder.append(version.substring(version.indexOf(".") + 1)).append(")");
- }
- else
- {
- builder.append(version);
- }
- return builder.toString();
- }
- return "SNAPSHOT";
- }
-
-}
Copied: core/trunk/impl/src/main/java/org/jboss/weld/util/reflection/Formats.java (from rev 6906, core/trunk/impl/src/main/java/org/jboss/weld/util/Names.java)
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/reflection/Formats.java (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/reflection/Formats.java 2010-08-05 13:15:53 UTC (rev 6908)
@@ -0,0 +1,343 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat, Inc., 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.util.reflection;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Modifier;
+import java.lang.reflect.Type;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.weld.ejb.spi.BusinessInterfaceDescriptor;
+import org.jboss.weld.introspector.WeldParameter;
+
+/**
+ * Utility class to produce friendly names e.g. for debugging
+ *
+ * @author Pete Muir
+ * @author Nicklas Karlsson
+ *
+ */
+public class Formats
+{
+
+ /**
+ * A transformation from one object to a String.
+ *
+ * @param <F> the type of the function input
+ */
+ private interface Function<F>
+ {
+ /**
+ * Applies the function to an object of type {@code F}, resulting in an
+ * object of type String.
+ *
+ * @param from the source object
+ * @param position the position in the list the object is at
+ * @return the resulting object
+ */
+ String apply(F from, int position);
+
+ }
+
+ private static final Function<?> SPACE_DELIMITER_FUNCTION = new Function<Object>()
+ {
+
+ public String apply(Object from, int position)
+ {
+ if (position > 0)
+ {
+ return " " + (from == null ? "null" : from.toString());
+ }
+ else
+ {
+ return from == null ? "null" : from.toString();
+ }
+ }
+ };
+
+ private static final Function<?> COMMA_DELIMITER_FUNCTION = new Function<Object>()
+ {
+
+ public String apply(Object from, int position)
+ {
+ if (position > 0)
+ {
+ return ", " + (from == null ? "null" : from.toString());
+ }
+ else
+ {
+ return from == null ? "null" : from.toString();
+ }
+ }
+ };
+
+ private static final Function<Annotation> ANNOTATION_LIST_FUNCTION = new Function<Annotation>()
+ {
+
+ public String apply(Annotation from, int position)
+ {
+ return spaceDelimiterFunction().apply("@" + from.annotationType().getSimpleName(), position);
+ }
+
+ };
+
+ @SuppressWarnings("unchecked")
+ private static <T> Function<T> spaceDelimiterFunction()
+ {
+ return (Function<T>) SPACE_DELIMITER_FUNCTION;
+ }
+
+ @SuppressWarnings("unchecked")
+ private static <T> Function<T> commaDelimiterFunction()
+ {
+ return (Function<T>) COMMA_DELIMITER_FUNCTION;
+ }
+
+ public static String formatType(Type baseType)
+ {
+ return Reflections.getRawType(baseType).getSimpleName() + formatActualTypeArguments(Reflections.getActualTypeArguments(baseType));
+ }
+
+ public static String formatTypes(Iterable<? extends Type> baseTypes)
+ {
+ return formatIterable(baseTypes, new Function<Type>()
+ {
+
+ public String apply(Type from, int position)
+ {
+ return commaDelimiterFunction().apply(formatType(from), position);
+ }
+
+ });
+ }
+
+ public static String formatBusinessInterfaceDescriptors(Iterable<? extends BusinessInterfaceDescriptor<?>> businessInterfaceDescriptors)
+ {
+ return formatIterable(businessInterfaceDescriptors, new Function<BusinessInterfaceDescriptor<?>>()
+ {
+
+ public String apply(BusinessInterfaceDescriptor<?> from, int position)
+ {
+ return commaDelimiterFunction().apply(formatType(from.getInterface()), position);
+ }
+
+ });
+ }
+
+ public static String addSpaceIfNeeded(String string)
+ {
+ if (string.length() > 0)
+ {
+ return string + " ";
+ }
+ else
+ {
+ return string;
+ }
+ }
+
+ public static String formatAsFormalParameterList(Iterable<? extends WeldParameter<?, ?>> parameters)
+ {
+ return "(" + formatIterable(parameters, new Function<WeldParameter<?, ?>>()
+ {
+
+ public String apply(WeldParameter<?, ?> from, int position)
+ {
+ return commaDelimiterFunction().apply(formatType(from.getBaseType()), position);
+ }
+
+ }) + ")";
+ }
+
+ public static String formatModifiers(int modifiers)
+ {
+ return formatIterable(parseModifiers(modifiers), spaceDelimiterFunction());
+ }
+
+ private static <F> String formatIterable(Iterable<? extends F> items, Function<F> function)
+ {
+ StringBuilder stringBuilder = new StringBuilder();
+ int i = 0;
+ for (F item : items)
+ {
+ stringBuilder.append(function.apply(item, i));
+ i++;
+ }
+ return stringBuilder.toString();
+ }
+
+ private static <F> String formatIterable(F[] items, Function<F> function)
+ {
+ StringBuilder stringBuilder = new StringBuilder();
+ int i = 0;
+ for (F item : items)
+ {
+ stringBuilder.append(function.apply(item, i));
+ i++;
+ }
+ return stringBuilder.toString();
+ }
+
+ /**
+ * Parses a reflection modifier to a list of string
+ *
+ * @param modifiers The modifier to parse
+ * @return The resulting string list
+ */
+ private static List<String> parseModifiers(int modifiers)
+ {
+ List<String> result = new ArrayList<String>();
+ if (Modifier.isPrivate(modifiers))
+ {
+ result.add("private");
+ }
+ if (Modifier.isProtected(modifiers))
+ {
+ result.add("protected");
+ }
+ if (Modifier.isPublic(modifiers))
+ {
+ result.add("public");
+ }
+ if (Modifier.isAbstract(modifiers))
+ {
+ result.add("abstract");
+ }
+ if (Modifier.isFinal(modifiers))
+ {
+ result.add("final");
+ }
+ if (Modifier.isNative(modifiers))
+ {
+ result.add("native");
+ }
+ if (Modifier.isStatic(modifiers))
+ {
+ result.add("static");
+ }
+ if (Modifier.isStrict(modifiers))
+ {
+ result.add("strict");
+ }
+ if (Modifier.isSynchronized(modifiers))
+ {
+ result.add("synchronized");
+ }
+ if (Modifier.isTransient(modifiers))
+ {
+ result.add("transient");
+ }
+ if (Modifier.isVolatile(modifiers))
+ {
+ result.add("volatile");
+ }
+ if (Modifier.isInterface(modifiers))
+ {
+ result.add("interface");
+ }
+ return result;
+ }
+
+ public static String formatActualTypeArguments(Type[] actualTypeArguments)
+ {
+ return wrapIfNeccessary(formatIterable(actualTypeArguments, new Function<Type>()
+ {
+
+ public String apply(Type from, int position)
+ {
+ return commaDelimiterFunction().apply(formatType(from), position);
+ }
+
+ }), "<", ">");
+ }
+
+ public static String wrapIfNeccessary(String string, String prepend, String append)
+ {
+ if (string != null && string.length() > 0)
+ {
+ return prepend + string + append;
+ }
+ else
+ {
+ return string;
+ }
+ }
+
+ public static String formatAnnotations(Iterable<Annotation> annotations)
+ {
+ return formatIterable(annotations, ANNOTATION_LIST_FUNCTION);
+ }
+
+ /**
+ * Gets a string representation from an array of annotations
+ *
+ * @param annotations The annotations
+ * @return The string representation
+ */
+ public static String formatAnnotations(Annotation[] annotations)
+ {
+ return formatIterable(annotations, ANNOTATION_LIST_FUNCTION);
+ }
+
+ public static String version(Package pkg)
+ {
+ if (pkg == null)
+ {
+ throw new IllegalArgumentException("Package can not be null");
+ }
+ else
+ {
+ return version(pkg.getImplementationVersion());
+ }
+ }
+
+ public static String version(String version)
+ {
+ if (version != null)
+ {
+ StringBuilder builder = new StringBuilder();
+ if (version.indexOf(".") > 0)
+ {
+ builder.append(version.substring(0, version.indexOf("."))).append(".");
+ version = version.substring(version.indexOf(".") + 1);
+ }
+ if (version.indexOf(".") > 0)
+ {
+ builder.append(version.substring(0, version.indexOf("."))).append(".");
+ version = version.substring(version.indexOf(".") + 1);
+ }
+ if (version.indexOf("-") > 0)
+ {
+ builder.append(version.substring(0, version.indexOf("-"))).append(" (");
+ builder.append(version.substring(version.indexOf("-") + 1)).append(")");
+ }
+ else if (version.indexOf(".") > 0)
+ {
+ builder.append(version.substring(0, version.indexOf("."))).append(" (");
+ builder.append(version.substring(version.indexOf(".") + 1)).append(")");
+ }
+ else
+ {
+ builder.append(version);
+ }
+ return builder.toString();
+ }
+ return "SNAPSHOT";
+ }
+
+}
Modified: core/trunk/impl/src/main/resources/org/jboss/weld/messages/validator_en.properties
===================================================================
--- core/trunk/impl/src/main/resources/org/jboss/weld/messages/validator_en.properties 2010-08-05 09:18:23 UTC (rev 6907)
+++ core/trunk/impl/src/main/resources/org/jboss/weld/messages/validator_en.properties 2010-08-05 13:15:53 UTC (rev 6908)
@@ -6,7 +6,7 @@
INJECTION_INTO_NON_DEPENDENT_BEAN=Cannot inject {0} in a non @Dependent scoped bean
INJECTION_POINT_WITH_TYPE_VARIABLE=Cannot declare an injection point with a type variable: {0}
INJECTION_POINT_HAS_UNSATISFIED_DEPENDENCIES=Unsatisfied dependencies for type [{2}] with qualifiers [{1}] at injection point [{0}]
-INJECTION_POINT_HAS_AMBIGUOUS_DEPENDENCIES=Injection point has ambiguous dependencies. Injection point: {0}; Qualifiers: {1}
+INJECTION_POINT_HAS_AMBIGUOUS_DEPENDENCIES=Ambiguous dependencies for type [{2}] with qualifiers [{1}] at injection point [{0}]. Possible dependencies [{3}]
INJECTION_POINT_HAS_NON_PROXYABLE_DEPENDENCIES=The injection point {0} has non-proxyable dependencies
INJECTION_POINT_HAS_NULLABLE_DEPENDENCIES=Injection point {0} has nullable dependencies
NON_SERIALIZABLE_BEAN_INJECTED_INTO_PASSIVATING_BEAN=The bean {0} declares passivating scope but the producer returned a non-serializable bean for injection: {1}
14 years, 6 months
Weld SVN: r6907 - in core/trunk: impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz and 1 other directories.
by weld-commits@lists.jboss.org
Author: aslak
Date: 2010-08-05 05:18:23 -0400 (Thu, 05 Aug 2010)
New Revision: 6907
Added:
core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/annotation/
core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/
Removed:
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/unit/reflection/annotation/
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/
Modified:
core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/WeldClassTest.java
Log:
WELD-493 Moved reflection unit tests to core. 2 test WeldClassTest added to @Ignore, can not be tested in isolation, need initialization of Container
Copied: core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/annotation (from rev 6902, core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/unit/reflection/annotation)
Copied: core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz (from rev 6902, core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/unit/reflection/clazz)
Modified: core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/WeldClassTest.java
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/WeldClassTest.java 2010-08-04 15:02:12 UTC (rev 6902)
+++ core/trunk/impl/src/test/java/org/jboss/weld/tests/unit/reflection/clazz/WeldClassTest.java 2010-08-05 09:18:23 UTC (rev 6907)
@@ -28,10 +28,10 @@
import org.jboss.weld.introspector.jlr.WeldClassImpl;
import org.jboss.weld.metadata.TypeStore;
import org.jboss.weld.resources.ClassTransformer;
-import org.jboss.weld.tests.category.Broken;
+import org.jboss.weld.util.reflection.instantiation.InstantiatorFactory;
import org.junit.Assert;
+import org.junit.Ignore;
import org.junit.Test;
-import org.junit.experimental.categories.Category;
//@Artifact
public class WeldClassTest
@@ -43,7 +43,7 @@
* description = "WELD-216"
*/
@Test
- @Category(Broken.class)
+ @Ignore // Broken
public void testMemberClassWithGenericTypes()
{
AnnotatedType at = WeldClassImpl.of(new Kangaroo().procreate().getClass(), transformer);
@@ -54,6 +54,13 @@
* description = "WELD-216"
*/
@Test
+ @Ignore
+ /*
+ * Not isolated, depends on someone else initializing Containers.
+ *
+ * getUnproxyableClassException() catch(NoSuchMethodException)
+ * InstantiatorFactory.useInstantiators() <-- Needs Containers
+ */
public void testLocalClassWithGenericTypes()
{
AnnotatedType at = WeldClassImpl.of(new Koala().procreate().getClass(), transformer);
@@ -64,6 +71,13 @@
* description = "WELD-216"
*/
@Test
+ @Ignore
+ /*
+ * Not isolated, depends on someone else initializing Containers.
+ *
+ * getUnproxyableClassException() catch(NoSuchMethodException)
+ * InstantiatorFactory.useInstantiators() <-- Needs Containers
+ */
public void testAnonymousClassWithGenericTypes()
{
AnnotatedType at = WeldClassImpl.of(new Possum().procreate().getClass(), transformer);
14 years, 6 months