Module waffle.jna
Package waffle.servlet

# Class NegotiateRequestWrapper

java.lang.Object
javax.servlet.ServletRequestWrapper
javax.servlet.http.HttpServletRequestWrapper
waffle.servlet.NegotiateRequestWrapper

All Implemented Interfaces:
  `javax.servlet.http.HttpServletRequest`, `javax.servlet.ServletRequest`

public class NegotiateRequestWrapper extends javax.servlet.http.HttpServletRequestWrapper
Negotiate Request wrapper.

## Field Summary

### Fields inherited from interface javax.servlet.http.HttpServletRequest

`BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH`

## Constructor Summary

Constructors
Constructor
Description
`NegotiateRequestWrapper(javax.servlet.http.HttpServletRequest newRequest, WindowsPrincipal newPrincipal)`
Instantiates a new negotiate request wrapper.

## Method Summary

Modifier and Type
Method
Description
`String`
`getAuthType()`
Authentication type.
`String`
`getRemoteUser()`
Remote username.
`Principal`
`getUserPrincipal()`
User principal.
`boolean`
`isUserInRole(String role)`
Returns true if the user is in a given role.

### Methods inherited from class javax.servlet.http.HttpServletRequestWrapper

`authenticate, changeSessionId, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, login, logout, newPushBuilder, upgrade`

### Methods inherited from class javax.servlet.ServletRequestWrapper

`getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequest, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync`

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

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

### Methods inherited from interface javax.servlet.ServletRequest

`getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync`

## Constructor Details

### NegotiateRequestWrapper

public NegotiateRequestWrapper(javax.servlet.http.HttpServletRequest newRequest, WindowsPrincipal newPrincipal)
Instantiates a new negotiate request wrapper.

Parameters:
  `newRequest` - the new request
  `newPrincipal` - the new principal

## Method Details

### getUserPrincipal

public Principal getUserPrincipal()
User principal.

Specified by:
  `getUserPrincipal` in interface `javax.servlet.http.HttpServletRequest`
Overrides:
  `getUserPrincipal` in class `javax.servlet.http.HttpServletRequestWrapper`
Returns:
  the user principal

### getAuthType

public String getAuthType()
Authentication type.

Specified by:
  `getAuthType` in interface `javax.servlet.http.HttpServletRequest`
Overrides:
  `getAuthType` in class `javax.servlet.http.HttpServletRequestWrapper`
Returns:
  the auth type

### getRemoteUser

public String getRemoteUser()
Remote username.

Specified by:
  `getRemoteUser` in interface `javax.servlet.http.HttpServletRequest`
Overrides:
  `getRemoteUser` in class `javax.servlet.http.HttpServletRequestWrapper`
Returns:
  the remote user

### isUserInRole

public boolean isUserInRole(String role)
Returns true if the user is in a given role.

Specified by:
  `isUserInRole` in interface `javax.servlet.http.HttpServletRequest`
Overrides:
  `isUserInRole` in class `javax.servlet.http.HttpServletRequestWrapper`
Parameters:
  `role` - the role
Returns:
  true, if is user in role