[jbosstools-issues] [JBoss JIRA] Resolved: (JBIDE-7686) Quick fix for "Interceptor/Decorator is annotated @Specializes [JSR-299 §4.3.1]" error markers

Daniel Azarov (JIRA) jira-events at lists.jboss.org
Fri Jul 29 14:57:23 EDT 2011


     [ https://issues.jboss.org/browse/JBIDE-7686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Azarov resolved JBIDE-7686.
----------------------------------

    Resolution: Done


> Quick fix for "Interceptor/Decorator is annotated @Specializes [JSR-299 §4.3.1]" error markers
> ----------------------------------------------------------------------------------------------
>
>                 Key: JBIDE-7686
>                 URL: https://issues.jboss.org/browse/JBIDE-7686
>             Project: Tools (JBoss Tools)
>          Issue Type: Sub-task
>          Components: cdi
>            Reporter: Daniel Azarov
>            Assignee: Daniel Azarov
>              Labels: new_and_noteworthy
>             Fix For: 3.3.0.M3
>
>         Attachments: SpecializesInDecorator.png, SpecializesInInterceptor.png
>
>
> This quick fix should offer to Delete @Specializes annotation
> Test case:
> EXECUTE: Create CDI project
> EXECUTE: Create TestBean class
> {code}
> package org.test;
> import javax.enterprise.inject.Specializes;
> import javax.interceptor.Interceptor;
> @Interceptor
> @AnyBinding
> @Specializes
> public class TestBean extends AnyBean{
> 	public String produce(){
> 		return "a";
> 	}
> }
> {code}
> EXECUTE: Create AAnnotation interface
> {code}
> package org.test;
> public @interface AAnnotation {
> }
> {code}
> EXECUTE: Create AnyBean class
> {code}
> package org.test;
> public class AnyBean {
> }
> {code}
> EXECUTE: Create AnyBinding interface
> {code}
> package org.test;
> import java.lang.annotation.ElementType;
> import java.lang.annotation.Inherited;
> import java.lang.annotation.Retention;
> import java.lang.annotation.RetentionPolicy;
> import java.lang.annotation.Target;
> import javax.interceptor.InterceptorBinding;
> @Inherited 
> @InterceptorBinding 
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface AnyBinding {
> }
> {code}
> ASSERT: @Specializes annotation should be marked by problem marker
> EXECUTE: Point mouse to @Specializes annotation
> ASSERT: Text hover with quick fixe appears
> EXECUTE: Create TestBean2 class
> {code}
> package org.test;
> import javax.decorator.Decorator;
> import javax.decorator.Delegate;
> import javax.enterprise.inject.Specializes;
> import javax.inject.Inject;
> @Decorator
> @Specializes
> public class TestBean2 extends AnyBean{
> 	@Inject @Delegate @AAnnotation String str;
> 	public String produce(){
> 		return str;
> 	}
> }
> {code}
> ASSERT: @Specializes annotation should be marked by problem marker
> EXECUTE: Point mouse to @Specializes annotation
> ASSERT: Text hover with quick fixe appears

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the jbosstools-issues mailing list