Example usage for org.springframework.web.context.request NativeWebRequest getUserPrincipal

List of usage examples for org.springframework.web.context.request NativeWebRequest getUserPrincipal

Introduction

In this page you can find the example usage for org.springframework.web.context.request NativeWebRequest getUserPrincipal.

Prototype

@Nullable
Principal getUserPrincipal();

Source Link

Document

Return the user principal for this request, if any.

Usage

From source file:shiver.me.timbers.security.web.controller.UserHandlerMethodArgumentResolver.java

@Override
public User resolveArgument(MethodParameter parameter, ModelAndViewContainer container,
        NativeWebRequest request, WebDataBinderFactory binderFactory) throws Exception {
    return userRepository.findByUsername(request.getUserPrincipal().getName());
}

From source file:com.epam.ta.reportportal.ws.resolver.ActiveUserWebArgumentResolver.java

@Override
public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer paramModelAndViewContainer,
        NativeWebRequest webRequest, WebDataBinderFactory paramWebDataBinderFactory) throws Exception {
    Authentication authentication = (Authentication) webRequest.getUserPrincipal();
    if (!authentication.getAuthorities().isEmpty()) {
        Optional<UserRole> userRole = UserRole
                .findByAuthority(authentication.getAuthorities().iterator().next().getAuthority());
        return userRole.isPresent() ? userRole.get() : WebArgumentResolver.UNRESOLVED;
    }/*from  w w w  .  ja  v a  2 s .c o m*/
    return WebArgumentResolver.UNRESOLVED;
}

From source file:com.naveen.demo.saml.CurrentUserHandlerMethodArgumentResolver.java

public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
    if (this.supportsParameter(methodParameter)) {
        Principal principal = (Principal) webRequest.getUserPrincipal();
        return (User) ((Authentication) principal).getPrincipal();
    } else {/*from  ww  w .  ja  va  2 s. com*/
        return WebArgumentResolver.UNRESOLVED;
    }
}

From source file:com.vdenotaris.spring.boot.security.saml.web.core.CurrentUserHandlerMethodArgumentResolver.java

public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
    if (this.supportsParameter(methodParameter)) {
        Principal principal = (Principal) webRequest.getUserPrincipal();
        return (JWTAuthenticatedUser) ((Authentication) principal).getPrincipal();
    } else {// w w w .j a  v a  2 s.c  o m
        return WebArgumentResolver.UNRESOLVED;
    }
}

From source file:com.miserablemind.butter.resolvers.user.ActiveUserMethodArgumentResolver.java

/**
 * Resolves the method parameter. Overrides {@link HandlerMethodArgumentResolver} method resolveArgument.
 *
 * @param methodParameter parameter being resolved. Value is used for passing to supportsParameter method.
 * @param mavContainer    model and view container. In this instance it is not used for anything.
 * @param webRequest      web request used for getting the principal.
 * @param binderFactory   WebDataBinderFactory. In this case it is not used for anything.
 * @return {@link AppUser} app user if there is an authenticated user. {@code null} if there is no authenticated user,
 * {@code WebArgumentResolver.UNRESOLVED} if method parameter is not supported.
 * @throws Exception/*from  w w w . ja  va 2 s  . co  m*/
 */
@Override
public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {

    if (this.supportsParameter(methodParameter)) {
        Principal principal = webRequest.getUserPrincipal();
        if (null != principal) {
            return ((Authentication) principal).getPrincipal();
        } else {
            return null;
        }
    }
    return WebArgumentResolver.UNRESOLVED;

}

From source file:com.mtech.easyexchange.resolver.CurrentUserResolver.java

@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {

    if (this.supportsParameter(parameter)) {

        WebUser userDetails = (WebUser) ((Authentication) webRequest.getUserPrincipal()).getPrincipal();
        return userManager.getUser(userDetails.getId());

    } else {//  w ww  .  ja  v  a  2  s  .  c o m
        return WebArgumentResolver.UNRESOLVED;
    }

}

From source file:io.pivotal.auth.samlwrapper.userannotation.CurrentUserHandlerMethodArgumentResolver.java

public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
    if (!supportsParameter(methodParameter)) {
        return WebArgumentResolver.UNRESOLVED;
    }//from w w w .  ja  va2 s  .  co  m
    Principal principal = webRequest.getUserPrincipal();

    if (principal == null) {
        return new User("Unauthenticated", "", Collections.emptyList());
    }

    Object user = ((Authentication) principal).getPrincipal();

    if (user instanceof User) { // also prevents null return
        return user;
    }

    return WebArgumentResolver.UNRESOLVED;
}

From source file:com.vdenotaris.spring.boot.security.saml.web.core.CurrentUserHandlerMethodArgumentResolverTest.java

@Test
public void testResolveArgument() throws Exception {
    // given//from  w w  w.j  av  a 2  s.  com
    ModelAndViewContainer mavContainer = mock(ModelAndViewContainer.class);
    WebDataBinderFactory binderFactory = mock(WebDataBinderFactory.class);
    NativeWebRequest webRequest = mock(NativeWebRequest.class);
    JWTAuthenticatedUser stubUser = new JWTAuthenticatedUser(USER_NAME);
    Principal stubPrincipal = new UsernamePasswordAuthenticationToken(stubUser, null);
    when(webRequest.getUserPrincipal()).thenReturn(stubPrincipal);

    // when/then
    assertEquals(stubUser, resolver.resolveArgument(validParam, mavContainer, webRequest, binderFactory));
    assertEquals(WebArgumentResolver.UNRESOLVED,
            resolver.resolveArgument(notAnnotatedParam, mavContainer, webRequest, binderFactory));
    assertEquals(WebArgumentResolver.UNRESOLVED,
            resolver.resolveArgument(wrongTypeParam, mavContainer, webRequest, binderFactory));
}

From source file:shiver.me.timbers.security.web.controller.UserHandlerMethodArgumentResolverTest.java

@Test
public void Can_resolver_a_user() throws Exception {

    final NativeWebRequest request = mock(NativeWebRequest.class);

    final Principal principal = mock(Principal.class);
    final String username = someString();

    final User expected = mock(User.class);

    // Given//  w w w .jav a 2  s  .  c  om
    given(request.getUserPrincipal()).willReturn(principal);
    given(principal.getName()).willReturn(username);
    given(userRepository.findByUsername(username)).willReturn(expected);

    // When
    final User actual = resolver.resolveArgument(mock(MethodParameter.class), mock(ModelAndViewContainer.class),
            request, mock(WebDataBinderFactory.class));

    // Then
    assertThat(actual, equalTo(expected));
}

From source file:architecture.user.spring.annotation.ActiveUserWebArgumentResolver.java

public Object resolveArgument(MethodParameter methodParameter, NativeWebRequest webRequest) {
    Annotation[] annotations = methodParameter.getParameterAnnotations();
    if (methodParameter.getParameterType().equals(org.springframework.security.core.userdetails.User.class)
            || methodParameter.getParameterType()
                    .equals(architecture.user.security.spring.userdetails.ExtendedUserDetails.class)) {
        for (Annotation annotation : annotations) {
            if (ActiveUser.class.isInstance(annotation)) {
                Principal principal = webRequest.getUserPrincipal();
                if (principal == null) {
                    return EMPTY_EXTENDED_USER_DETAILS;
                } else {
                    return ((Authentication) principal).getPrincipal();
                }/*from  ww  w. j  ava  2s  .  co  m*/
            }
        }
    }
    return WebArgumentResolver.UNRESOLVED;
}