Package org.springframework.security.web.server.context

# Class SecurityContextServerWebExchange

java.lang.Object
org.springframework.web.server.ServerWebExchangeDecorator
org.springframework.security.web.server.context.SecurityContextServerWebExchange

All Implemented Interfaces:
  `org.springframework.web.server.ServerWebExchange`

public class SecurityContextServerWebExchange extends org.springframework.web.server.ServerWebExchangeDecorator
Overrides the `ServerWebExchange.getPrincipal()` with the provided SecurityContext

Since:
  5.0
See Also:
  - `SecurityContextServerWebExchangeWebFilter`

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.springframework.web.server.ServerWebExchange

`org.springframework.web.server.ServerWebExchange.Builder`

## Field Summary

### Fields inherited from interface org.springframework.web.server.ServerWebExchange

`LOG_ID_ATTRIBUTE`

## Constructor Summary

Constructors
Constructor
Description
`SecurityContextServerWebExchange(org.springframework.web.server.ServerWebExchange delegate, reactor.core.publisher.Mono<org.springframework.security.core.context.SecurityContext> context)`

## Method Summary

Modifier and Type
Method
Description
`<T extends Principal>
reactor.core.publisher.Mono<T>`
`getPrincipal()`

### Methods inherited from class org.springframework.web.server.ServerWebExchangeDecorator

`addUrlTransformer, checkNotModified, checkNotModified, checkNotModified, cleanupMultipart, getApplicationContext, getAttributes, getDelegate, getFormData, getLocaleContext, getLogPrefix, getMultipartData, getRequest, getResponse, getSession, isNotModified, toString, transformUrl`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.springframework.web.server.ServerWebExchange

`getAttribute, getAttributeOrDefault, getRequiredAttribute, mutate`

## Constructor Details

### SecurityContextServerWebExchange

public SecurityContextServerWebExchange(org.springframework.web.server.ServerWebExchange delegate, reactor.core.publisher.Mono<org.springframework.security.core.context.SecurityContext> context)

## Method Details

### getPrincipal

public <T extends Principal> reactor.core.publisher.Mono<T> getPrincipal()

Specified by:
  `getPrincipal` in interface `org.springframework.web.server.ServerWebExchange`
Overrides:
  `getPrincipal` in class `org.springframework.web.server.ServerWebExchangeDecorator`