/* AngularBeans, CDI-AngularJS bridge Copyright (c) 2014, Bessem Hmidi. or third-party contributors as indicated by
* the @author tags or express copyright attribution statements applied by the authors. This copyrighted material is
* made available to anyone wishing to use, modify, copy, or redistribute it subject to the terms and conditions of the
* GNU Lesser General Public License, as published by the Free Software Foundation. This program is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. */
package angularBeans.api;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import javax.inject.Qualifier;
/**
* Declare a class as an AngularBean that will be proxied via an auto generated AngularJS service.
* <p>
* this stereotype define by default a RequestScoped CDI Bean
* <p>
* compatibles scopes : <br>
* javax.enterprise.context.RequestScoped <br>
* javax.enterprise.context.ApplicationScoped <br>
* javax.enterprise.context.NGSessionScoped
*
* @author bessem hmidi
*
*/
@Retention(RUNTIME)
@Target({ METHOD, FIELD, PARAMETER, TYPE })
@Qualifier
@Documented
public @interface AngularBean {
}