/* 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. */
/**
* @author Bessem Hmidi
*/
package angularBeans.realtime;
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;
/**
*
* @author bessem a method annotated with @RealTime will be called over websocket (or one of the fallback protocol list
* if sockjs is used: ['websocket','xhr-polling','jsonp-polling', 'xdr-polling', 'xdr-streaming',
* 'xhr-streaming', 'iframe-xhr-polling', 'iframe-eventsource', 'iframe-htmlfile' ])
*
* if the method has no return (void) then it will be a one way call, if not we will have a request-response
* realTime window.
*/
@Retention(RUNTIME)
@Target({ TYPE, METHOD, FIELD, PARAMETER })
@Documented
public @interface RealTime {
//
}