You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by ge...@apache.org on 2010/03/18 19:43:33 UTC
svn commit: r924943 - in
/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans:
component/EnterpriseBeanMarker.java component/InterceptedMarker.java
component/ManagedBean.java config/BeansDeployer.java
decorator/OwbDecorator.java
Author: gerdogdu
Date: Thu Mar 18 18:43:32 2010
New Revision: 924943
URL: http://svn.apache.org/viewvc?rev=924943&view=rev
Log:
Adding marker for defining interceptor.
Added:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java (with props)
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/EnterpriseBeanMarker.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ManagedBean.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/config/BeansDeployer.java
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/OwbDecorator.java
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/EnterpriseBeanMarker.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/EnterpriseBeanMarker.java?rev=924943&r1=924942&r2=924943&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/EnterpriseBeanMarker.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/EnterpriseBeanMarker.java Thu Mar 18 18:43:32 2010
@@ -19,7 +19,7 @@ package org.apache.webbeans.component;
* @version $Rev$ $Date$
*
*/
-public interface EnterpriseBeanMarker
+public interface EnterpriseBeanMarker extends InterceptedMarker
{
}
Added: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java?rev=924943&view=auto
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java (added)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java Thu Mar 18 18:43:32 2010
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.apache.webbeans.component;
+
+/**
+ * Marker interface for beans that
+ * can be intercepted.
+ * @version $Rev$ $Date$
+ *
+ */
+public interface InterceptedMarker
+{
+
+}
Propchange: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/InterceptedMarker.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ManagedBean.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ManagedBean.java?rev=924943&r1=924942&r2=924943&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ManagedBean.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/component/ManagedBean.java Thu Mar 18 18:43:32 2010
@@ -28,7 +28,7 @@ import org.apache.webbeans.intercept.Int
*
* @version $Rev$Â $Date$
*/
-public class ManagedBean<T> extends AbstractInjectionTargetBean<T>
+public class ManagedBean<T> extends AbstractInjectionTargetBean<T> implements InterceptedMarker
{
/** Constructor of the web bean component */
private Constructor<T> constructor;
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=924943&r1=924942&r2=924943&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 Thu Mar 18 18:43:32 2010
@@ -35,6 +35,7 @@ import org.apache.webbeans.WebBeansConst
import org.apache.webbeans.component.AbstractInjectionTargetBean;
import org.apache.webbeans.component.AbstractProducerBean;
import org.apache.webbeans.component.InjectionTargetBean;
+import org.apache.webbeans.component.InterceptedMarker;
import org.apache.webbeans.component.ManagedBean;
import org.apache.webbeans.component.NewBean;
import org.apache.webbeans.component.OwbBean;
@@ -316,24 +317,22 @@ public class BeansDeployer
{
for (Bean<?> bean : beans)
{
- //Configure decorator and interceptor stack for Injection target beans
- if((bean instanceof AbstractInjectionTargetBean) &&
- !(bean instanceof NewBean))
+ if(bean instanceof InjectionTargetBean)
{
-
- //Decorators not applied to interceptors/decorators
+ //Decorators not applied to interceptors/decorators/@NewBean
if(!(bean instanceof Decorator) &&
- !(bean instanceof javax.enterprise.inject.spi.Interceptor))
+ !(bean instanceof javax.enterprise.inject.spi.Interceptor) &&
+ !(bean instanceof NewBean))
{
DefinitionUtil.defineDecoratorStack((AbstractInjectionTargetBean<Object>)bean);
}
- if(!(bean instanceof javax.enterprise.inject.spi.Interceptor) &&
- !(bean instanceof NewBean))
+ //If intercepted marker
+ if(bean instanceof InterceptedMarker)
{
DefinitionUtil.defineBeanInterceptorStack((AbstractInjectionTargetBean<Object>)bean);
- }
- }
+ }
+ }
//Check passivation scope
checkPassivationScope(bean);
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/OwbDecorator.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/OwbDecorator.java?rev=924943&r1=924942&r2=924943&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/OwbDecorator.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/OwbDecorator.java Thu Mar 18 18:43:32 2010
@@ -26,8 +26,9 @@ import javax.enterprise.context.spi.Crea
import javax.enterprise.inject.spi.Decorator;
import org.apache.webbeans.component.AbstractOwbBean;
+import org.apache.webbeans.component.InterceptedMarker;
-public interface OwbDecorator<T> extends Decorator<T>
+public interface OwbDecorator<T> extends Decorator<T>, InterceptedMarker
{
public boolean isDecoratorMatch(Set<Type> apiTypes, Set<Annotation> annotations);