Example usage for org.springframework.messaging.simp.annotation.support PrincipalMethodArgumentResolver PrincipalMethodArgumentResolver

List of usage examples for org.springframework.messaging.simp.annotation.support PrincipalMethodArgumentResolver PrincipalMethodArgumentResolver

Introduction

In this page you can find the example usage for org.springframework.messaging.simp.annotation.support PrincipalMethodArgumentResolver PrincipalMethodArgumentResolver.

Prototype

PrincipalMethodArgumentResolver

Source Link

Usage

From source file:org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.java

protected List<HandlerMethodArgumentResolver> initArgumentResolvers() {
    ApplicationContext context = getApplicationContext();
    ConfigurableBeanFactory beanFactory = (context instanceof ConfigurableApplicationContext
            ? ((ConfigurableApplicationContext) context).getBeanFactory()
            : null);/*w  w w  . j  av a  2s .c o  m*/

    List<HandlerMethodArgumentResolver> resolvers = new ArrayList<>();

    // Annotation-based argument resolution
    resolvers.add(new HeaderMethodArgumentResolver(this.conversionService, beanFactory));
    resolvers.add(new HeadersMethodArgumentResolver());
    resolvers.add(new DestinationVariableMethodArgumentResolver(this.conversionService));

    // Type-based argument resolution
    resolvers.add(new PrincipalMethodArgumentResolver());
    resolvers.add(new MessageMethodArgumentResolver(this.messageConverter));

    resolvers.addAll(getCustomArgumentResolvers());
    resolvers.add(new PayloadArgumentResolver(this.messageConverter, this.validator));

    return resolvers;
}

From source file:org.springframework.messaging.simp.handler.AnnotationMethodMessageHandler.java

@Override
public void afterPropertiesSet() {

    initHandlerMethods();//from  w w w.  j  a v a  2s  . c  o  m

    this.argumentResolvers.addResolver(new PrincipalMethodArgumentResolver());
    this.argumentResolvers.addResolver(new MessageMethodArgumentResolver());
    this.argumentResolvers.addResolver(new MessageBodyMethodArgumentResolver(this.messageConverter));

    this.returnValueHandlers.addHandler(new ReplyToMethodReturnValueHandler(this.dispatchMessagingTemplate));
    this.returnValueHandlers
            .addHandler(new SubscriptionMethodReturnValueHandler(this.webSocketSessionMessagingTemplate));
}