public class ServerAnnotationProcessor extends AnnotationProcessor
Processes annotations in server-side service objects.
Service objects must be annotated with Service
at class level to be processed by this processor,
for example:
@Service public class MyService { @Session private ServerSession session; @Configure("/foo") public void configureFoo(ConfigurableServerChannel channel) { channel.setPersistent(...); channel.addListener(...); channel.addAuthorizer(...); } @Listener("/foo") public void handleFooMessages(ServerSession remote, ServerMessage.Mutable message) { // Do something } }
The processor is used in this way:
BayeuxServer bayeux = ...; ServerAnnotationProcessor processor = ServerAnnotationProcessor.get(bayeux); MyService s = new MyService(); processor.process(s);
Constructor and Description |
---|
ServerAnnotationProcessor(BayeuxServer bayeuxServer) |
ServerAnnotationProcessor(BayeuxServer bayeuxServer,
Object... injectables) |
Modifier and Type | Method and Description |
---|---|
boolean |
deprocess(Object bean)
Performs the opposite processing done by
process(Object) on callbacks methods
annotated with Listener , Subscription and RemoteCall , and on
lifecycle methods annotated with PreDestroy . |
boolean |
deprocessCallbacks(Object bean)
Performs the opposite processing done by
processCallbacks(Object) on callback methods
annotated with Listener , Subscription and RemoteCall . |
boolean |
process(Object bean)
Processes dependencies annotated with
Inject and Session ,
configuration methods annotated with Configure , callback methods
annotated with Listener , Subscription and RemoteCall ,
and lifecycle methods annotated with PostConstruct . |
boolean |
processCallbacks(Object bean)
|
boolean |
processConfigurations(Object bean)
Processes the methods annotated with
Configure . |
boolean |
processDependencies(Object bean)
Processes the dependencies annotated with
Inject and Session . |
boolean |
processPostConstruct(Object bean)
Processes lifecycle methods annotated with
PostConstruct . |
boolean |
processPreDestroy(Object bean)
Processes lifecycle methods annotated with
PreDestroy . |
callPublic, checkMethodsPublic, checkSignaturesMatch, findAnnotatedMethods, getField, invokePrivate, invokePublic, processInjectable, processInjectables, processParameters, setField
public ServerAnnotationProcessor(BayeuxServer bayeuxServer)
public ServerAnnotationProcessor(BayeuxServer bayeuxServer, Object... injectables)
public boolean process(Object bean)
Inject
and Session
,
configuration methods annotated with Configure
, callback methods
annotated with Listener
, Subscription
and RemoteCall
,
and lifecycle methods annotated with PostConstruct
.bean
- the annotated service instancepublic boolean processConfigurations(Object bean)
Configure
.bean
- the annotated service instancepublic boolean processDependencies(Object bean)
Inject
and Session
.bean
- the annotated service instancepublic boolean processPostConstruct(Object bean)
PostConstruct
.processPostConstruct
in class AnnotationProcessor
bean
- the annotated service instancepublic boolean processCallbacks(Object bean)
bean
- the annotated service instancepublic boolean deprocess(Object bean)
process(Object)
on callbacks methods
annotated with Listener
, Subscription
and RemoteCall
, and on
lifecycle methods annotated with PreDestroy
.bean
- the annotated service instanceprocess(Object)
public boolean deprocessCallbacks(Object bean)
processCallbacks(Object)
on callback methods
annotated with Listener
, Subscription
and RemoteCall
.bean
- the annotated service instancepublic boolean processPreDestroy(Object bean)
PreDestroy
.processPreDestroy
in class AnnotationProcessor
bean
- the annotated service instanceCopyright © 2008–2024 The CometD Project. All rights reserved.