Return-Path: X-Original-To: apmail-openwebbeans-commits-archive@www.apache.org Delivered-To: apmail-openwebbeans-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A05B611D0C for ; Fri, 6 Jun 2014 15:29:46 +0000 (UTC) Received: (qmail 18174 invoked by uid 500); 6 Jun 2014 15:29:46 -0000 Delivered-To: apmail-openwebbeans-commits-archive@openwebbeans.apache.org Received: (qmail 18151 invoked by uid 500); 6 Jun 2014 15:29:46 -0000 Mailing-List: contact commits-help@openwebbeans.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openwebbeans.apache.org Delivered-To: mailing list commits@openwebbeans.apache.org Received: (qmail 18141 invoked by uid 99); 6 Jun 2014 15:29:46 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Jun 2014 15:29:46 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Jun 2014 15:29:45 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 9193723889EA; Fri, 6 Jun 2014 15:29:20 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1600923 - in /openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans: config/ portable/events/ portable/events/discovery/ portable/events/generics/ util/ Date: Fri, 06 Jun 2014 15:29:20 -0000 To: commits@openwebbeans.apache.org From: struberg@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20140606152920.9193723889EA@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: struberg Date: Fri Jun 6 15:29:19 2014 New Revision: 1600923 URL: http://svn.apache.org/r1600923 Log: OWB-966 implement ProcessSyntheticAnnotatedType works in TCK already. Need to write a unit test for it though... Added: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessSyntheticAnnotatedTypeImpl.java - copied, changed from r1600744, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessSyntheticAnnotatedType.java - copied, changed from r1600744, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessAnnotatedType.java Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/AfterTypeDiscoveryImpl.java openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/ErrorStack.java openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansUtil.java Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java?rev=1600923&r1=1600922&r2=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java Fri Jun 6 15:29:19 2014 @@ -59,6 +59,7 @@ import org.apache.webbeans.portable.Anno import org.apache.webbeans.portable.events.ProcessAnnotatedTypeImpl; import org.apache.webbeans.portable.events.ProcessBeanImpl; import org.apache.webbeans.portable.events.ProcessInjectionTargetImpl; +import org.apache.webbeans.portable.events.ProcessSyntheticAnnotatedTypeImpl; import org.apache.webbeans.portable.events.discovery.AfterBeanDiscoveryImpl; import org.apache.webbeans.portable.events.discovery.AfterDeploymentValidationImpl; import org.apache.webbeans.portable.events.discovery.AfterTypeDiscoveryImpl; @@ -705,8 +706,8 @@ public class BeansDeployer for (AnnotatedType annotatedType : additionalAnnotatedTypes) { // Fires ProcessAnnotatedType - ProcessAnnotatedTypeImpl processAnnotatedEvent = - webBeansContext.getWebBeansUtil().fireProcessAnnotatedTypeEvent(annotatedType); + ProcessSyntheticAnnotatedTypeImpl processAnnotatedEvent = + webBeansContext.getWebBeansUtil().fireProcessSyntheticAnnotatedTypeEvent(annotatedType); if (!processAnnotatedEvent.isVeto()) { Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java?rev=1600923&r1=1600922&r2=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java Fri Jun 6 15:29:19 2014 @@ -24,8 +24,6 @@ import javax.enterprise.inject.spi.Proce /** * Default implementation of the {@link ProcessAnnotatedType}. * - * @version $Rev$ $Date$ - * * @param bean class info */ public class ProcessAnnotatedTypeImpl implements ProcessAnnotatedType Copied: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessSyntheticAnnotatedTypeImpl.java (from r1600744, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java) URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessSyntheticAnnotatedTypeImpl.java?p2=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessSyntheticAnnotatedTypeImpl.java&p1=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java&r1=1600744&r2=1600923&rev=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessAnnotatedTypeImpl.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/ProcessSyntheticAnnotatedTypeImpl.java Fri Jun 6 15:29:19 2014 @@ -19,23 +19,25 @@ package org.apache.webbeans.portable.events; import javax.enterprise.inject.spi.AnnotatedType; -import javax.enterprise.inject.spi.ProcessAnnotatedType; +import javax.enterprise.inject.spi.Extension; +import javax.enterprise.inject.spi.ProcessSyntheticAnnotatedType; /** - * Default implementation of the {@link ProcessAnnotatedType}. - * - * @version $Rev$ $Date$ + * Default implementation of the {@link javax.enterprise.inject.spi.ProcessSyntheticAnnotatedType}. * * @param bean class info */ -public class ProcessAnnotatedTypeImpl implements ProcessAnnotatedType +public class ProcessSyntheticAnnotatedTypeImpl implements ProcessSyntheticAnnotatedType { + + private Extension source; + /**Annotated Type*/ private AnnotatedType annotatedType = null; - + /**veto or not*/ private boolean veto = false; - + /** * This field gets set to true when a custom AnnotatedType * got set in an Extension. In this case we must now take this modified @@ -43,16 +45,19 @@ public class ProcessAnnotatedTypeImpl */ private boolean modifiedAnnotatedType = false; - /** - * Creates a new instance with the given annotated type. - * - * @param annotatedType annotated type - */ - public ProcessAnnotatedTypeImpl(AnnotatedType annotatedType) + + public ProcessSyntheticAnnotatedTypeImpl(AnnotatedType annotatedType, Extension source) { this.annotatedType = annotatedType; + this.source = source; } - + + @Override + public Extension getSource() + { + return source; + } + /** * {@inheritDoc} */ @@ -71,10 +76,10 @@ public class ProcessAnnotatedTypeImpl annotatedType = type; modifiedAnnotatedType = true; } - + /** * Returns sets or not. - * + * * @return set or not */ public boolean isModifiedAnnotatedType() @@ -90,10 +95,10 @@ public class ProcessAnnotatedTypeImpl { veto = true; } - + /** * Returns veto status. - * + * * @return veto status */ public boolean isVeto() Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/AfterTypeDiscoveryImpl.java URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/AfterTypeDiscoveryImpl.java?rev=1600923&r1=1600922&r2=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/AfterTypeDiscoveryImpl.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/AfterTypeDiscoveryImpl.java Fri Jun 6 15:29:19 2014 @@ -60,6 +60,7 @@ public class AfterTypeDiscoveryImpl impl @Override public void addAnnotatedType(AnnotatedType type, String id) { + //X TODO evaluate and file Extension webBeansContext.getBeanManagerImpl().addAdditionalAnnotatedType(type, id); } } Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/ErrorStack.java URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/ErrorStack.java?rev=1600923&r1=1600922&r2=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/ErrorStack.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/discovery/ErrorStack.java Fri Jun 6 15:29:19 2014 @@ -54,7 +54,15 @@ public class ErrorStack while(it.hasNext()) { Throwable t = it.next(); - logger.log(Level.SEVERE, t.getMessage(), t); + String message = t.getMessage(); + if (message != null && message.length() > 0) + { + logger.log(Level.SEVERE, t.getMessage(), t); + } + else + { + logger.log(Level.SEVERE, "unknown error", t); + } } } } Copied: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessSyntheticAnnotatedType.java (from r1600744, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessAnnotatedType.java) URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessSyntheticAnnotatedType.java?p2=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessSyntheticAnnotatedType.java&p1=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessAnnotatedType.java&r1=1600744&r2=1600923&rev=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessAnnotatedType.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/portable/events/generics/GProcessSyntheticAnnotatedType.java Fri Jun 6 15:29:19 2014 @@ -19,15 +19,15 @@ package org.apache.webbeans.portable.events.generics; import javax.enterprise.inject.spi.AnnotatedType; +import javax.enterprise.inject.spi.Extension; +import org.apache.webbeans.portable.events.ProcessSyntheticAnnotatedTypeImpl; -import org.apache.webbeans.portable.events.ProcessAnnotatedTypeImpl; -@SuppressWarnings("unchecked") -public class GProcessAnnotatedType extends ProcessAnnotatedTypeImpl implements GenericBeanEvent +public class GProcessSyntheticAnnotatedType extends ProcessSyntheticAnnotatedTypeImpl implements GenericBeanEvent { - public GProcessAnnotatedType(AnnotatedType annotatedType ) + public GProcessSyntheticAnnotatedType(Extension source, AnnotatedType annotatedType) { - super(annotatedType); + super(annotatedType, source); } @Override @@ -35,4 +35,5 @@ public class GProcessAnnotatedType exten { return getAnnotatedType().getJavaClass(); } + } Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansUtil.java URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansUtil.java?rev=1600923&r1=1600922&r2=1600923&view=diff ============================================================================== --- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansUtil.java (original) +++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansUtil.java Fri Jun 6 15:29:19 2014 @@ -71,6 +71,7 @@ import org.apache.webbeans.portable.even import org.apache.webbeans.portable.events.generics.GProcessProducerField; import org.apache.webbeans.portable.events.generics.GProcessProducerMethod; import org.apache.webbeans.portable.events.generics.GProcessSessionBean; +import org.apache.webbeans.portable.events.generics.GProcessSyntheticAnnotatedType; import org.apache.webbeans.spi.plugins.OpenWebBeansEjbPlugin; import org.apache.webbeans.spi.plugins.OpenWebBeansPlugin; @@ -940,6 +941,28 @@ public final class WebBeansUtil } /** + * Returns ProcessAnnotatedType event. + * @param bean type + * @param annotatedType bean class + * @return event + */ + public GProcessSyntheticAnnotatedType fireProcessSyntheticAnnotatedTypeEvent(AnnotatedType annotatedType) + { + Extension source = null; //X TODO + GProcessSyntheticAnnotatedType gProcessSyntheticAnnotatedType = new GProcessSyntheticAnnotatedType(source, annotatedType); + + //Fires ProcessSyntheticAnnotatedType + webBeansContext.getBeanManagerImpl().fireEvent(gProcessSyntheticAnnotatedType, AnnotationUtil.EMPTY_ANNOTATION_ARRAY); + + if (gProcessSyntheticAnnotatedType.isModifiedAnnotatedType()) + { + webBeansContext.getAnnotatedElementFactory().setAnnotatedType(gProcessSyntheticAnnotatedType.getAnnotatedType()); + } + + return gProcessSyntheticAnnotatedType; + } + + /** * Returns ProcessInjectionTarget event. * @param bean type * @return event @@ -1169,6 +1192,7 @@ public final class WebBeansUtil type.equals(AfterDeploymentValidation.class) || type.equals(BeforeShutdown.class) || type.equals(GProcessAnnotatedType.class) || + type.equals(GProcessSyntheticAnnotatedType.class) || type.equals(GProcessInjectionTarget.class) || type.equals(GProcessProducer.class) || type.equals(GProcessProducerField.class) || @@ -1182,6 +1206,7 @@ public final class WebBeansUtil public static boolean isExtensionBeanEventType(Type type) { return type.equals(GProcessAnnotatedType.class) || + type.equals(GProcessSyntheticAnnotatedType.class) || type.equals(GProcessInjectionTarget.class) || type.equals(GProcessManagedBean.class) || type.equals(GProcessSessionBean.class) || @@ -1191,6 +1216,7 @@ public final class WebBeansUtil public static boolean isDefaultExtensionBeanEventType(Class clazz) { return clazz.equals(ProcessAnnotatedType.class) || + clazz.equals(ProcessSyntheticAnnotatedType.class) || clazz.equals(ProcessInjectionTarget.class) || clazz.equals(ProcessManagedBean.class) || clazz.equals(ProcessBean.class) ||