[jbosstools-commits] JBoss Tools SVN: r23371 - in trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi: internal/core/impl and 1 other directory.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Mon Jul 12 08:25:34 EDT 2010
Author: scabanovich
Date: 2010-07-12 08:25:33 -0400 (Mon, 12 Jul 2010)
New Revision: 23371
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IInterceptorBinded.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/BeanMethod.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/ClassBean.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/InterceptorBindingElement.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/StereotypeElement.java
Log:
https://jira.jboss.org/browse/JBIDE-6566
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -780,7 +780,7 @@
}
public static Set<IInterceptorBinding> getAllInterceptorBindings(IInterceptorBinded binded) {
- Set<IInterceptorBindingDeclaration> ds = collectInheritedInterceptorBindingDeclaratios(binded, new HashSet<IInterceptorBindingDeclaration>());
+ Set<IInterceptorBindingDeclaration> ds = collectAdditionalInterceptorBindingDeclaratios(binded, new HashSet<IInterceptorBindingDeclaration>());
Set<IInterceptorBinding> result = new HashSet<IInterceptorBinding>();
for (IInterceptorBindingDeclaration d: ds) {
IInterceptorBinding b = d.getInterceptorBinding();
@@ -797,34 +797,34 @@
* @return
*/
public static Set<IInterceptorBindingDeclaration> getAllInterceptorBindingDeclaratios(IInterceptorBinded binded) {
- return collectInheritedInterceptorBindingDeclaratios(binded, new HashSet<IInterceptorBindingDeclaration>());
+ return collectAdditionalInterceptorBindingDeclaratios(binded, new HashSet<IInterceptorBindingDeclaration>());
}
- private static Set<IInterceptorBindingDeclaration> collectInheritedInterceptorBindingDeclaratios(IInterceptorBinded binded, Set<IInterceptorBindingDeclaration> result) {
- Set<IInterceptorBindingDeclaration> declarations = binded.getInterceptorBindingDeclarations();
+ private static Set<IInterceptorBindingDeclaration> collectAdditionalInterceptorBindingDeclaratios(IInterceptorBinded binded, Set<IInterceptorBindingDeclaration> result) {
+ Set<IInterceptorBindingDeclaration> declarations = binded.getInterceptorBindingDeclarations(true);
for (IInterceptorBindingDeclaration declaration : declarations) {
if(!result.contains(declaration)) {
result.add(declaration);
IInterceptorBinding binding = declaration.getInterceptorBinding();
- collectInheritedInterceptorBindingDeclaratios(binding, result);
+ collectAdditionalInterceptorBindingDeclaratios(binding, result);
if(binding instanceof IStereotyped) {
- collectInheritedInterceptorBindingDeclaratiosFromStereotyps((IStereotyped)binding, result);
+ collectAdditionalInterceptorBindingDeclaratiosFromStereotyps((IStereotyped)binding, result);
}
}
}
if(binded instanceof IStereotyped) {
- collectInheritedInterceptorBindingDeclaratiosFromStereotyps((IStereotyped)binded, result);
+ collectAdditionalInterceptorBindingDeclaratiosFromStereotyps((IStereotyped)binded, result);
}
return result;
}
- private static Set<IInterceptorBindingDeclaration> collectInheritedInterceptorBindingDeclaratiosFromStereotyps(IStereotyped stereotyped, Set<IInterceptorBindingDeclaration> result) {
+ private static Set<IInterceptorBindingDeclaration> collectAdditionalInterceptorBindingDeclaratiosFromStereotyps(IStereotyped stereotyped, Set<IInterceptorBindingDeclaration> result) {
Set<IStereotypeDeclaration> stereotypeDeclarations = collectInheritedStereotypDeclarations(stereotyped, new HashSet<IStereotypeDeclaration>());
if(stereotyped instanceof ClassBean) {
stereotypeDeclarations.addAll(((ClassBean)stereotyped).getInheritedStereotypDeclarations());
}
for (IStereotypeDeclaration stereotypeDeclaration : stereotypeDeclarations) {
- collectInheritedInterceptorBindingDeclaratios(stereotypeDeclaration.getStereotype(), result);
+ collectAdditionalInterceptorBindingDeclaratios(stereotypeDeclaration.getStereotype(), result);
}
return result;
}
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IInterceptorBinded.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IInterceptorBinded.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IInterceptorBinded.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -26,7 +26,7 @@
*
* @return the set of interceptor binding declarations
*/
- Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations();
+ Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations(boolean includeInherited);
/**
* Obtains the interceptor bindings of the bean class or method or stereotype or interceptor binding type.
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -32,6 +32,8 @@
import org.jboss.tools.cdi.core.IAnnotationDeclaration;
import org.jboss.tools.cdi.core.IBean;
import org.jboss.tools.cdi.core.IInjectionPoint;
+import org.jboss.tools.cdi.core.IInterceptorBinding;
+import org.jboss.tools.cdi.core.IInterceptorBindingDeclaration;
import org.jboss.tools.cdi.core.IParametedType;
import org.jboss.tools.cdi.core.IQualifier;
import org.jboss.tools.cdi.core.IQualifierDeclaration;
@@ -189,6 +191,10 @@
return Collections.emptySet();
}
+ protected Set<IInterceptorBindingDeclaration> getInheritedInterceptorBindingDeclarations() {
+ return Collections.emptySet();
+ }
+
public Set<IQualifier> getQualifiers() {
IQualifier any = getCDIProject().getQualifier(CDIConstants.ANY_QUALIFIER_TYPE_NAME);
IQualifier def = getCDIProject().getQualifier(CDIConstants.DEFAULT_QUALIFIER_TYPE_NAME);
@@ -215,6 +221,27 @@
return result;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.cdi.core.IClassBean#getInterceptorBindingDeclarations()
+ */
+ public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations(boolean includeInherited) {
+ Set<IInterceptorBindingDeclaration> result = ClassBean.getInterceptorBindingDeclarations(definition);
+ if(includeInherited) {
+ Set<IInterceptorBinding> qs = new HashSet<IInterceptorBinding>();
+ for (IInterceptorBindingDeclaration d: result) {
+ if(d.getInterceptorBinding() != null) qs.add(d.getInterceptorBinding());
+ }
+ Set<IInterceptorBindingDeclaration> ds = getInheritedInterceptorBindingDeclarations();
+ for (IInterceptorBindingDeclaration d : ds) {
+ if (d.getInterceptorBinding() != null && !qs.contains(d.getInterceptorBinding())) {
+ result.add(d);
+ }
+ }
+ }
+ return result;
+ }
+
public Set<IScopeDeclaration> getScopeDeclarations() {
return getScopeDeclarations(getCDIProject().getNature(), definition.getAnnotations());
}
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/BeanMethod.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/BeanMethod.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/BeanMethod.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -102,14 +102,6 @@
/*
* (non-Javadoc)
- * @see org.jboss.tools.cdi.core.IInterceptorBinded#getInterceptorBindingDeclarations()
- */
- public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations() {
- return ClassBean.getInterceptorBindingDeclarations(definition);
- }
-
- /*
- * (non-Javadoc)
* @see org.jboss.tools.cdi.core.IInterceptorBinded#getInterceptorBindings()
*/
public Set<IInterceptorBinding> getInterceptorBindings() {
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/ClassBean.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/ClassBean.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/ClassBean.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -176,14 +176,6 @@
return result;
}
- /*
- * (non-Javadoc)
- * @see org.jboss.tools.cdi.core.IClassBean#getInterceptorBindingDeclarations()
- */
- public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations() {
- return getInterceptorBindingDeclarations(definition);
- }
-
public static Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations(AbstractMemberDefinition definition) {
Set<IInterceptorBindingDeclaration> result = new HashSet<IInterceptorBindingDeclaration>();
List<IAnnotationDeclaration> as = definition.getAnnotations();
@@ -468,6 +460,20 @@
return result;
}
+ protected Set<IInterceptorBindingDeclaration> getInheritedInterceptorBindingDeclarations() {
+ if(superClassBean == null) return Collections.emptySet();
+ Set<IInterceptorBindingDeclaration> result = new HashSet<IInterceptorBindingDeclaration>();
+ Set<IInterceptorBindingDeclaration> ds = superClassBean.getInterceptorBindingDeclarations(true);
+ for (IInterceptorBindingDeclaration d: ds) {
+ if(d.getInterceptorBinding() != null && d.getInterceptorBinding().getInheritedDeclaration() != null) {
+ result.add(d);
+ } else if(isSpecializing()) {
+ result.add(d);
+ }
+ }
+ return result;
+ }
+
public Set<IStereotypeDeclaration> getInheritedStereotypDeclarations() {
if(superClassBean == null) return Collections.emptySet();
Set<IStereotypeDeclaration> result = new HashSet<IStereotypeDeclaration>();
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/InterceptorBindingElement.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/InterceptorBindingElement.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/InterceptorBindingElement.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -27,17 +27,13 @@
/*
* (non-Javadoc)
- * @see org.jboss.tools.cdi.core.IInterceptorBinded#getInterceptorBindingDeclarations()
- */
- public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations() {
- return ClassBean.getInterceptorBindingDeclarations(definition);
- }
-
- /*
- * (non-Javadoc)
* @see org.jboss.tools.cdi.core.IInterceptorBinded#getInterceptorBindings()
*/
public Set<IInterceptorBinding> getInterceptorBindings() {
return CDIUtil.getAllInterceptorBindings(this);
}
+
+ public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations(boolean includeInherited) {
+ return ClassBean.getInterceptorBindingDeclarations(definition);
+ }
}
\ No newline at end of file
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/StereotypeElement.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/StereotypeElement.java 2010-07-12 12:19:05 UTC (rev 23370)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/StereotypeElement.java 2010-07-12 12:25:33 UTC (rev 23371)
@@ -55,7 +55,7 @@
* (non-Javadoc)
* @see org.jboss.tools.cdi.core.IInterceptorBinded#getInterceptorBindingDeclarations()
*/
- public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations() {
+ public Set<IInterceptorBindingDeclaration> getInterceptorBindingDeclarations(boolean includeInherited) {
return ClassBean.getInterceptorBindingDeclarations(definition);
}
More information about the jbosstools-commits
mailing list