Merge pull request #5953 from github/sauyon/java/spring-webutil

Java: Add models for the Spring `web.util` package
This commit is contained in:
Chris Smowton
2021-08-18 15:07:28 +01:00
committed by GitHub
75 changed files with 4341 additions and 17 deletions

View File

@@ -0,0 +1,4 @@
lgtm,codescanning
* Additional flow steps in the `org.springframework.web.util` package of the Spring framework have
been modelled. This may result in additional results for security queries on projects using this
framework.

View File

@@ -95,6 +95,7 @@ private module Frameworks {
private import semmle.code.java.frameworks.spring.SpringWebClient
private import semmle.code.java.frameworks.spring.SpringBeans
private import semmle.code.java.frameworks.spring.SpringWebMultipart
private import semmle.code.java.frameworks.spring.SpringWebUtil
private import semmle.code.java.security.ResponseSplitting
private import semmle.code.java.security.InformationLeak
private import semmle.code.java.security.GroovyInjection

View File

@@ -39,6 +39,7 @@ import semmle.code.java.frameworks.spring.SpringUtil
import semmle.code.java.frameworks.spring.SpringValidation
import semmle.code.java.frameworks.spring.SpringValue
import semmle.code.java.frameworks.spring.SpringWebMultipart
import semmle.code.java.frameworks.spring.SpringWebUtil
import semmle.code.java.frameworks.spring.SpringXMLElement
import semmle.code.java.frameworks.spring.metrics.MetricSpringBean
import semmle.code.java.frameworks.spring.metrics.MetricSpringBeanFile

View File

@@ -0,0 +1,176 @@
/** Provides models of taint flow in `org.springframework.web.util` */
import java
private import semmle.code.java.dataflow.ExternalFlow
private class FlowSummaries extends SummaryModelCsv {
override predicate row(string row) {
row =
[
"org.springframework.web.util;UriBuilder;true;build;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriBuilder;true;build;(Map);;MapValue of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;fragment;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;fragment;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;host;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;host;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;path;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;path;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;pathSegment;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;pathSegment;;;ArrayElement of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;port;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;port;(java.lang.String);;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;query;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;query;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParam;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;queryParam;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParam;(String,Collection);;Element of Argument[1];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParam;(String,Object[]);;ArrayElement of Argument[1];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParamIfPresent;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;queryParamIfPresent;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParamIfPresent;;;Element of Argument[1];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParams;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;queryParams;;;MapKey of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;queryParams;;;Element of MapValue of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replacePath;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;replacePath;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQuery;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;replaceQuery;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQueryParam;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;replaceQueryParam;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQueryParam;(String,Collection);;Element of Argument[1];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQueryParam;(String,Object[]);;ArrayElement of Argument[1];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQueryParams;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;replaceQueryParams;;;MapKey of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;replaceQueryParams;;;Element of MapValue of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;scheme;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;scheme;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilder;true;userInfo;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriBuilder;true;userInfo;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriBuilderFactory;true;builder;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriBuilderFactory;true;uriString;;;Argument[-1..0];ReturnValue;taint",
"org.springframework.web.util;UriComponents$UriTemplateVariables;true;getValue;;;MapValue of Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriTemplateHandler;true;expand;;;Argument[-1..0];ReturnValue;taint",
"org.springframework.web.util;UriTemplateHandler;true;expand;(String,Map);;MapValue of Argument[1];ReturnValue;taint",
"org.springframework.web.util;UriTemplateHandler;true;expand;(String,Object[]);;ArrayElement of Argument[1];ReturnValue;taint",
"org.springframework.web.util;AbstractUriTemplateHandler;true;getBaseUrl;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;AbstractUriTemplateHandler;true;setBaseUrl;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;AbstractUriTemplateHandler;true;setDefaultUriVariables;;;Argument[0];Argument[-1];taint",
// writing to a `Request` or `Response` currently doesn't propagate taint to the object itself.
"org.springframework.web.util;ContentCachingRequestWrapper;false;ContentCachingRequestWrapper;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;ContentCachingRequestWrapper;false;getContentAsByteArray;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;ContentCachingResponseWrapper;false;ContentCachingResponseWrapper;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;ContentCachingResponseWrapper;false;getContentAsByteArray;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;ContentCachingResponseWrapper;false;getContentInputStream;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;DefaultUriBuilderFactory;false;DefaultUriBuilderFactory;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;DefaultUriBuilderFactory;false;builder;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;DefaultUriBuilderFactory;false;getDefaultUriVariables;;;Argument[-1];MapValue of ReturnValue;taint",
"org.springframework.web.util;DefaultUriBuilderFactory;false;setDefaultUriVariables;;;MapValue of Argument[0];Argument[-1];taint",
"org.springframework.web.util;DefaultUriBuilderFactory;false;uriString;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;HtmlUtils;false;htmlEscape;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;HtmlUtils;false;htmlEscapeDecimal;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;HtmlUtils;false;htmlEscapeHex;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;HtmlUtils;false;htmlUnescape;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;ServletContextPropertyUtils;false;resolvePlaceholders;;;Argument[0..1];ReturnValue;taint",
"org.springframework.web.util;ServletRequestPathUtils;false;getCachedPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;ServletRequestPathUtils;false;getCachedPathValue;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;ServletRequestPathUtils;false;getParsedRequestPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;ServletRequestPathUtils;false;parseAndCache;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;ServletRequestPathUtils;false;setParsedRequestPath;;;Argument[0];Argument[1];taint",
"org.springframework.web.util;UriComponents;false;UriComponents;;;Argument[0..1];Argument[-1];taint",
"org.springframework.web.util;UriComponents;false;copyToUriComponentsBuilder;;;Argument[-1];Argument[0];taint",
"org.springframework.web.util;UriComponents;false;encode;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;expand;(Map);;MapValue of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;expand;(Object[]);;ArrayElement of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;expand;(UriTemplateVariables);;MapValue of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getFragment;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getHost;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getPath;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getPathSegments;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getQuery;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getQueryParams;;;Argument[-1];MapKey of ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getQueryParams;;;Argument[-1];Element of MapValue of ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getScheme;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getSchemeSpecificPart;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;getUserInfo;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;toUri;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;toUriString;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;toString;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponents;false;normalize;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;build;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;build;(Map);;MapValue of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;build;(Object[]);;ArrayElement of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;buildAndExpand;(Map);;MapValue of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;buildAndExpand;(Object[]);;ArrayElement of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;cloneBuilder;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;encode;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;fromHttpRequest;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;fromHttpUrl;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;fromOriginHeader;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;fromPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;fromUri;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;fromUriString;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;parseForwardedFor;;;Argument[0..1];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;schemeSpecificPart;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;schemeSpecificPart;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriComponentsBuilder;false;toUriString;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriComponentsBuilder;false;uri;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;uri;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriComponentsBuilder;false;uriComponents;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;uriComponents;;;Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriComponentsBuilder;false;uriVariables;;;Argument[-1];ReturnValue;value",
"org.springframework.web.util;UriComponentsBuilder;false;uriVariables;;;MapValue of Argument[0];Argument[-1];taint",
"org.springframework.web.util;UriTemplate;false;expand;(Map);;MapValue of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriTemplate;false;expand;(Object[]);;ArrayElement of Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriTemplate;false;getVariableNames;;;Argument[-1];Element of ReturnValue;taint",
"org.springframework.web.util;UriTemplate;false;match;;;Argument[0];MapValue of ReturnValue;taint",
"org.springframework.web.util;UriTemplate;false;toString;;;Argument[-1];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;decode;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encode;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeAuthority;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeFragment;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeHost;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodePath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodePathSegment;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodePort;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeQuery;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeQueryParam;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeQueryParams;;;MapKey of Argument[0];MapKey of ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeQueryParams;;;MapValue of Argument[0];MapValue of ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeScheme;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeUriVariables;(Map);;MapValue of Argument[0];MapValue of ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeUriVariables;(Map);;MapKey of Argument[0];MapKey of ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeUriVariables;(Object[]);;ArrayElement of Argument[0];ArrayElement of ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;encodeUserInfo;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UriUtils;false;extractFileExtension;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;decodeMatrixVariables;;;MapKey of Argument[1];MapKey of ReturnValue;value",
"org.springframework.web.util;UrlPathHelper;false;decodeMatrixVariables;;;MapValue of Argument[1];MapValue of ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;decodePathVariables;;;MapKey of Argument[1];MapKey of ReturnValue;value",
"org.springframework.web.util;UrlPathHelper;false;decodePathVariables;;;MapValue of Argument[1];MapValue of ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;decodeRequestString;;;Argument[1];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getContextPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getOriginatingContextPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getOriginatingQueryString;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getOriginatingRequestUri;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getPathWithinApplication;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getPathWithinServletMapping;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getRequestUri;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getResolvedLookupPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;getServletPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;removeSemicolonContent;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;UrlPathHelper;false;resolveAndCacheLookupPath;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;findParameterValue;(Map,String);;MapValue of Argument[0];ReturnValue;value",
"org.springframework.web.util;WebUtils;false;findParameterValue;(ServletRequest,String);;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getCookie;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getNativeRequest;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getNativeResponse;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getParametersStartingWith;;;Argument[0];MapKey of ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getParametersStartingWith;;;Argument[0];MapValue of ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getRealPath;;;Argument[0..1];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getRequiredSessionAttribute;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;getSessionAttribute;;;Argument[0];ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;parseMatrixVariables;;;Argument[0];MapKey of ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;parseMatrixVariables;;;Argument[0];MapValue of ReturnValue;taint",
"org.springframework.web.util;WebUtils;false;setSessionAttribute;;;Argument[2];Argument[0];taint"
]
}
}

View File

@@ -93,7 +93,10 @@ private class DefaultXssSink extends XssSink {
/** A default sanitizer that considers numeric and boolean typed data safe for writing to output. */
private class DefaultXSSSanitizer extends XssSanitizer {
DefaultXSSSanitizer() {
this.getType() instanceof NumericType or this.getType() instanceof BooleanType
this.getType() instanceof NumericType or
this.getType() instanceof BooleanType or
// Match `org.springframework.web.util.HtmlUtils.htmlEscape` and possibly other methods like it.
this.asExpr().(MethodAccess).getMethod().getName().regexpMatch("(?i)html_?escape.*")
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
//semmle-extractor-options: --javac-args -cp ${testdir}/../../../../stubs/springframework-5.3.8:${testdir}/../../../../stubs/javax-servlet-2.5:${testdir}/../../../../stubs/apache-commons-logging-1.2

View File

@@ -0,0 +1,52 @@
import java
import semmle.code.java.dataflow.DataFlow
import semmle.code.java.dataflow.TaintTracking
import TestUtilities.InlineExpectationsTest
class ValueFlowConf extends DataFlow::Configuration {
ValueFlowConf() { this = "qltest:valueFlowConf" }
override predicate isSource(DataFlow::Node n) {
n.asExpr().(MethodAccess).getMethod().hasName("source")
}
override predicate isSink(DataFlow::Node n) {
n.asExpr().(Argument).getCall().getCallee().hasName("sink")
}
}
class TaintFlowConf extends TaintTracking::Configuration {
TaintFlowConf() { this = "qltest:taintFlowConf" }
override predicate isSource(DataFlow::Node n) {
n.asExpr().(MethodAccess).getMethod().hasName("source")
}
override predicate isSink(DataFlow::Node n) {
n.asExpr().(Argument).getCall().getCallee().hasName("sink")
}
}
class HasFlowTest extends InlineExpectationsTest {
HasFlowTest() { this = "HasFlowTest" }
override string getARelevantTag() { result = ["hasValueFlow", "hasTaintFlow"] }
override predicate hasActualResult(Location location, string element, string tag, string value) {
tag = "hasValueFlow" and
exists(DataFlow::Node src, DataFlow::Node sink, ValueFlowConf conf | conf.hasFlow(src, sink) |
sink.getLocation() = location and
element = sink.toString() and
value = ""
)
or
tag = "hasTaintFlow" and
exists(DataFlow::Node src, DataFlow::Node sink, TaintFlowConf conf |
conf.hasFlow(src, sink) and not any(ValueFlowConf c).hasFlow(src, sink)
|
sink.getLocation() = location and
element = sink.toString() and
value = ""
)
}
}

View File

@@ -5,6 +5,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.util.HtmlUtils;
import java.util.Optional;
@@ -157,4 +158,9 @@ public class SpringXSS {
return userControlled; // $xss
}
@GetMapping(value = "/abc")
public static String sanitizedString(String userControlled) {
return HtmlUtils.htmlEscape(userControlled);
}
}

View File

@@ -0,0 +1,31 @@
// Generated automatically from javax.servlet.AsyncContext for testing purposes
package javax.servlet;
import javax.servlet.AsyncListener;
import javax.servlet.ServletContext;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public interface AsyncContext
{
<T extends AsyncListener> T createListener(Class<T> p0);
ServletRequest getRequest();
ServletResponse getResponse();
boolean hasOriginalRequestAndResponse();
long getTimeout();
static String ASYNC_CONTEXT_PATH = null;
static String ASYNC_MAPPING = null;
static String ASYNC_PATH_INFO = null;
static String ASYNC_QUERY_STRING = null;
static String ASYNC_REQUEST_URI = null;
static String ASYNC_SERVLET_PATH = null;
void addListener(AsyncListener p0);
void addListener(AsyncListener p0, ServletRequest p1, ServletResponse p2);
void complete();
void dispatch();
void dispatch(ServletContext p0, String p1);
void dispatch(String p0);
void setTimeout(long p0);
void start(Runnable p0);
}

View File

@@ -0,0 +1,20 @@
// Generated automatically from javax.servlet.AsyncEvent for testing purposes
package javax.servlet;
import javax.servlet.AsyncContext;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class AsyncEvent
{
protected AsyncEvent() {}
public AsyncContext getAsyncContext(){ return null; }
public AsyncEvent(AsyncContext p0){}
public AsyncEvent(AsyncContext p0, ServletRequest p1, ServletResponse p2){}
public AsyncEvent(AsyncContext p0, ServletRequest p1, ServletResponse p2, Throwable p3){}
public AsyncEvent(AsyncContext p0, Throwable p1){}
public ServletRequest getSuppliedRequest(){ return null; }
public ServletResponse getSuppliedResponse(){ return null; }
public Throwable getThrowable(){ return null; }
}

View File

@@ -0,0 +1,14 @@
// Generated automatically from javax.servlet.AsyncListener for testing purposes
package javax.servlet;
import java.util.EventListener;
import javax.servlet.AsyncEvent;
public interface AsyncListener extends EventListener
{
void onComplete(AsyncEvent p0);
void onError(AsyncEvent p0);
void onStartAsync(AsyncEvent p0);
void onTimeout(AsyncEvent p0);
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from javax.servlet.DispatcherType for testing purposes
package javax.servlet;
public enum DispatcherType
{
ASYNC, ERROR, FORWARD, INCLUDE, REQUEST;
private DispatcherType() {}
}

View File

@@ -0,0 +1,15 @@
// Generated automatically from javax.servlet.Filter for testing purposes
package javax.servlet;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public interface Filter
{
default void destroy(){}
default void init(FilterConfig p0){}
void doFilter(ServletRequest p0, ServletResponse p1, FilterChain p2);
}

View File

@@ -0,0 +1,11 @@
// Generated automatically from javax.servlet.FilterChain for testing purposes
package javax.servlet;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public interface FilterChain
{
void doFilter(ServletRequest p0, ServletResponse p1);
}

View File

@@ -0,0 +1,14 @@
// Generated automatically from javax.servlet.FilterConfig for testing purposes
package javax.servlet;
import java.util.Enumeration;
import javax.servlet.ServletContext;
public interface FilterConfig
{
Enumeration<String> getInitParameterNames();
ServletContext getServletContext();
String getFilterName();
String getInitParameter(String p0);
}

View File

@@ -0,0 +1,19 @@
// Generated automatically from javax.servlet.FilterRegistration for testing purposes
package javax.servlet;
import java.util.Collection;
import java.util.EnumSet;
import javax.servlet.DispatcherType;
import javax.servlet.Registration;
public interface FilterRegistration extends Registration
{
Collection<String> getServletNameMappings();
Collection<String> getUrlPatternMappings();
static public interface Dynamic extends FilterRegistration, Registration.Dynamic
{
}
void addMappingForServletNames(EnumSet<DispatcherType> p0, boolean p1, String... p2);
void addMappingForUrlPatterns(EnumSet<DispatcherType> p0, boolean p1, String... p2);
}

View File

@@ -0,0 +1,16 @@
// Generated automatically from javax.servlet.HttpConstraintElement for testing purposes
package javax.servlet;
import javax.servlet.annotation.ServletSecurity;
public class HttpConstraintElement
{
public HttpConstraintElement(){}
public HttpConstraintElement(ServletSecurity.EmptyRoleSemantic p0){}
public HttpConstraintElement(ServletSecurity.EmptyRoleSemantic p0, ServletSecurity.TransportGuarantee p1, String... p2){}
public HttpConstraintElement(ServletSecurity.TransportGuarantee p0, String... p1){}
public ServletSecurity.EmptyRoleSemantic getEmptyRoleSemantic(){ return null; }
public ServletSecurity.TransportGuarantee getTransportGuarantee(){ return null; }
public String[] getRolesAllowed(){ return null; }
}

View File

@@ -0,0 +1,13 @@
// Generated automatically from javax.servlet.HttpMethodConstraintElement for testing purposes
package javax.servlet;
import javax.servlet.HttpConstraintElement;
public class HttpMethodConstraintElement extends HttpConstraintElement
{
protected HttpMethodConstraintElement() {}
public HttpMethodConstraintElement(String p0){}
public HttpMethodConstraintElement(String p0, HttpConstraintElement p1){}
public String getMethodName(){ return null; }
}

View File

@@ -0,0 +1,17 @@
// Generated automatically from javax.servlet.MultipartConfigElement for testing purposes
package javax.servlet;
import javax.servlet.annotation.MultipartConfig;
public class MultipartConfigElement
{
protected MultipartConfigElement() {}
public MultipartConfigElement(MultipartConfig p0){}
public MultipartConfigElement(String p0){}
public MultipartConfigElement(String p0, long p1, long p2, int p3){}
public String getLocation(){ return null; }
public int getFileSizeThreshold(){ return 0; }
public long getMaxFileSize(){ return 0; }
public long getMaxRequestSize(){ return 0; }
}

View File

@@ -0,0 +1,12 @@
// Generated automatically from javax.servlet.ReadListener for testing purposes
package javax.servlet;
import java.util.EventListener;
public interface ReadListener extends EventListener
{
void onAllDataRead();
void onDataAvailable();
void onError(Throwable p0);
}

View File

@@ -0,0 +1,20 @@
// Generated automatically from javax.servlet.Registration for testing purposes
package javax.servlet;
import java.util.Map;
import java.util.Set;
public interface Registration
{
Map<String, String> getInitParameters();
Set<String> setInitParameters(Map<String, String> p0);
String getClassName();
String getInitParameter(String p0);
String getName();
boolean setInitParameter(String p0, String p1);
static public interface Dynamic extends Registration
{
void setAsyncSupported(boolean p0);
}
}

View File

@@ -7,6 +7,24 @@ import javax.servlet.ServletResponse;
public interface RequestDispatcher
{
static String ERROR_EXCEPTION = null;
static String ERROR_EXCEPTION_TYPE = null;
static String ERROR_MESSAGE = null;
static String ERROR_REQUEST_URI = null;
static String ERROR_SERVLET_NAME = null;
static String ERROR_STATUS_CODE = null;
static String FORWARD_CONTEXT_PATH = null;
static String FORWARD_MAPPING = null;
static String FORWARD_PATH_INFO = null;
static String FORWARD_QUERY_STRING = null;
static String FORWARD_REQUEST_URI = null;
static String FORWARD_SERVLET_PATH = null;
static String INCLUDE_CONTEXT_PATH = null;
static String INCLUDE_MAPPING = null;
static String INCLUDE_PATH_INFO = null;
static String INCLUDE_QUERY_STRING = null;
static String INCLUDE_REQUEST_URI = null;
static String INCLUDE_SERVLET_PATH = null;
void forward(ServletRequest p0, ServletResponse p1);
void include(ServletRequest p0, ServletResponse p1);
}

View File

@@ -7,7 +7,7 @@ import javax.servlet.ServletContext;
public interface ServletConfig
{
Enumeration getInitParameterNames();
Enumeration<String> getInitParameterNames();
ServletContext getServletContext();
String getInitParameter(String p0);
String getServletName();

View File

@@ -5,35 +5,79 @@ package javax.servlet;
import java.io.InputStream;
import java.net.URL;
import java.util.Enumeration;
import java.util.EventListener;
import java.util.Map;
import java.util.Set;
import javax.servlet.Filter;
import javax.servlet.FilterRegistration;
import javax.servlet.RequestDispatcher;
import javax.servlet.Servlet;
import javax.servlet.ServletRegistration;
import javax.servlet.SessionCookieConfig;
import javax.servlet.SessionTrackingMode;
import javax.servlet.descriptor.JspConfigDescriptor;
public interface ServletContext
{
Enumeration getAttributeNames();
Enumeration getInitParameterNames();
Enumeration getServletNames();
Enumeration getServlets();
<T extends EventListener> T createListener(Class<T> p0);
<T extends EventListener> void addListener(T p0);
<T extends Filter> T createFilter(Class<T> p0);
<T extends Servlet> T createServlet(Class<T> p0);
ClassLoader getClassLoader();
Enumeration<Servlet> getServlets();
Enumeration<String> getAttributeNames();
Enumeration<String> getInitParameterNames();
Enumeration<String> getServletNames();
FilterRegistration getFilterRegistration(String p0);
FilterRegistration.Dynamic addFilter(String p0, Class<? extends Filter> p1);
FilterRegistration.Dynamic addFilter(String p0, Filter p1);
FilterRegistration.Dynamic addFilter(String p0, String p1);
InputStream getResourceAsStream(String p0);
JspConfigDescriptor getJspConfigDescriptor();
Map<String, ? extends FilterRegistration> getFilterRegistrations();
Map<String, ? extends ServletRegistration> getServletRegistrations();
Object getAttribute(String p0);
RequestDispatcher getNamedDispatcher(String p0);
RequestDispatcher getRequestDispatcher(String p0);
Servlet getServlet(String p0);
ServletContext getContext(String p0);
Set getResourcePaths(String p0);
ServletRegistration getServletRegistration(String p0);
ServletRegistration.Dynamic addJspFile(String p0, String p1);
ServletRegistration.Dynamic addServlet(String p0, Class<? extends Servlet> p1);
ServletRegistration.Dynamic addServlet(String p0, Servlet p1);
ServletRegistration.Dynamic addServlet(String p0, String p1);
SessionCookieConfig getSessionCookieConfig();
Set<SessionTrackingMode> getDefaultSessionTrackingModes();
Set<SessionTrackingMode> getEffectiveSessionTrackingModes();
Set<String> getResourcePaths(String p0);
String getContextPath();
String getInitParameter(String p0);
String getMimeType(String p0);
String getRealPath(String p0);
String getRequestCharacterEncoding();
String getResponseCharacterEncoding();
String getServerInfo();
String getServletContextName();
String getVirtualServerName();
URL getResource(String p0);
boolean setInitParameter(String p0, String p1);
int getEffectiveMajorVersion();
int getEffectiveMinorVersion();
int getMajorVersion();
int getMinorVersion();
int getSessionTimeout();
static String ORDERED_LIBS = null;
static String TEMPDIR = null;
void addListener(Class<? extends EventListener> p0);
void addListener(String p0);
void declareRoles(String... p0);
void log(Exception p0, String p1);
void log(String p0);
void log(String p0, Throwable p1);
void removeAttribute(String p0);
void setAttribute(String p0, Object p1);
void setRequestCharacterEncoding(String p0);
void setResponseCharacterEncoding(String p0);
void setSessionTimeout(int p0);
void setSessionTrackingModes(Set<SessionTrackingMode> p0);
}

View File

@@ -3,9 +3,13 @@
package javax.servlet;
import java.io.InputStream;
import javax.servlet.ReadListener;
abstract public class ServletInputStream extends InputStream
{
protected ServletInputStream(){}
public abstract boolean isFinished();
public abstract boolean isReady();
public abstract void setReadListener(ReadListener p0);
public int readLine(byte[] p0, int p1, int p2){ return 0; }
}

View File

@@ -3,10 +3,13 @@
package javax.servlet;
import java.io.OutputStream;
import javax.servlet.WriteListener;
abstract public class ServletOutputStream extends OutputStream
{
protected ServletOutputStream(){}
public abstract boolean isReady();
public abstract void setWriteListener(WriteListener p0);
public void print(String p0){}
public void print(boolean p0){}
public void print(char p0){}

View File

@@ -0,0 +1,23 @@
// Generated automatically from javax.servlet.ServletRegistration for testing purposes
package javax.servlet;
import java.util.Collection;
import java.util.Set;
import javax.servlet.MultipartConfigElement;
import javax.servlet.Registration;
import javax.servlet.ServletSecurityElement;
public interface ServletRegistration extends Registration
{
Collection<String> getMappings();
Set<String> addMapping(String... p0);
String getRunAsRole();
static public interface Dynamic extends Registration.Dynamic, ServletRegistration
{
Set<String> setServletSecurity(ServletSecurityElement p0);
void setLoadOnStartup(int p0);
void setMultipartConfig(MultipartConfigElement p0);
void setRunAsRole(String p0);
}
}

View File

@@ -6,19 +6,28 @@ import java.io.BufferedReader;
import java.util.Enumeration;
import java.util.Locale;
import java.util.Map;
import javax.servlet.AsyncContext;
import javax.servlet.DispatcherType;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletInputStream;
import javax.servlet.ServletResponse;
public interface ServletRequest
{
AsyncContext getAsyncContext();
AsyncContext startAsync();
AsyncContext startAsync(ServletRequest p0, ServletResponse p1);
BufferedReader getReader();
Enumeration getAttributeNames();
Enumeration getLocales();
Enumeration getParameterNames();
DispatcherType getDispatcherType();
Enumeration<Locale> getLocales();
Enumeration<String> getAttributeNames();
Enumeration<String> getParameterNames();
Locale getLocale();
Map getParameterMap();
Map<String, String[]> getParameterMap();
Object getAttribute(String p0);
RequestDispatcher getRequestDispatcher(String p0);
ServletContext getServletContext();
ServletInputStream getInputStream();
String getCharacterEncoding();
String getContentType();
@@ -32,11 +41,14 @@ public interface ServletRequest
String getScheme();
String getServerName();
String[] getParameterValues(String p0);
boolean isAsyncStarted();
boolean isAsyncSupported();
boolean isSecure();
int getContentLength();
int getLocalPort();
int getRemotePort();
int getServerPort();
long getContentLengthLong();
void removeAttribute(String p0);
void setAttribute(String p0, Object p1);
void setCharacterEncoding(String p0);

View File

@@ -0,0 +1,62 @@
// Generated automatically from javax.servlet.ServletRequestWrapper for testing purposes
package javax.servlet;
import java.io.BufferedReader;
import java.util.Enumeration;
import java.util.Locale;
import java.util.Map;
import javax.servlet.AsyncContext;
import javax.servlet.DispatcherType;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletInputStream;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class ServletRequestWrapper implements ServletRequest
{
protected ServletRequestWrapper() {}
public AsyncContext getAsyncContext(){ return null; }
public AsyncContext startAsync(){ return null; }
public AsyncContext startAsync(ServletRequest p0, ServletResponse p1){ return null; }
public BufferedReader getReader(){ return null; }
public DispatcherType getDispatcherType(){ return null; }
public Enumeration<Locale> getLocales(){ return null; }
public Enumeration<String> getAttributeNames(){ return null; }
public Enumeration<String> getParameterNames(){ return null; }
public Locale getLocale(){ return null; }
public Map<String, String[]> getParameterMap(){ return null; }
public Object getAttribute(String p0){ return null; }
public RequestDispatcher getRequestDispatcher(String p0){ return null; }
public ServletContext getServletContext(){ return null; }
public ServletInputStream getInputStream(){ return null; }
public ServletRequest getRequest(){ return null; }
public ServletRequestWrapper(ServletRequest p0){}
public String getCharacterEncoding(){ return null; }
public String getContentType(){ return null; }
public String getLocalAddr(){ return null; }
public String getLocalName(){ return null; }
public String getParameter(String p0){ return null; }
public String getProtocol(){ return null; }
public String getRealPath(String p0){ return null; }
public String getRemoteAddr(){ return null; }
public String getRemoteHost(){ return null; }
public String getScheme(){ return null; }
public String getServerName(){ return null; }
public String[] getParameterValues(String p0){ return null; }
public boolean isAsyncStarted(){ return false; }
public boolean isAsyncSupported(){ return false; }
public boolean isSecure(){ return false; }
public boolean isWrapperFor(Class<? extends Object> p0){ return false; }
public boolean isWrapperFor(ServletRequest p0){ return false; }
public int getContentLength(){ return 0; }
public int getLocalPort(){ return 0; }
public int getRemotePort(){ return 0; }
public int getServerPort(){ return 0; }
public long getContentLengthLong(){ return 0; }
public void removeAttribute(String p0){}
public void setAttribute(String p0, Object p1){}
public void setCharacterEncoding(String p0){}
public void setRequest(ServletRequest p0){}
}

View File

@@ -21,6 +21,7 @@ public interface ServletResponse
void setBufferSize(int p0);
void setCharacterEncoding(String p0);
void setContentLength(int p0);
void setContentLengthLong(long p0);
void setContentType(String p0);
void setLocale(Locale p0);
}

View File

@@ -0,0 +1,34 @@
// Generated automatically from javax.servlet.ServletResponseWrapper for testing purposes
package javax.servlet;
import java.io.PrintWriter;
import java.util.Locale;
import javax.servlet.ServletOutputStream;
import javax.servlet.ServletResponse;
public class ServletResponseWrapper implements ServletResponse
{
protected ServletResponseWrapper() {}
public Locale getLocale(){ return null; }
public PrintWriter getWriter(){ return null; }
public ServletOutputStream getOutputStream(){ return null; }
public ServletResponse getResponse(){ return null; }
public ServletResponseWrapper(ServletResponse p0){}
public String getCharacterEncoding(){ return null; }
public String getContentType(){ return null; }
public boolean isCommitted(){ return false; }
public boolean isWrapperFor(Class<? extends Object> p0){ return false; }
public boolean isWrapperFor(ServletResponse p0){ return false; }
public int getBufferSize(){ return 0; }
public void flushBuffer(){}
public void reset(){}
public void resetBuffer(){}
public void setBufferSize(int p0){}
public void setCharacterEncoding(String p0){}
public void setContentLength(int p0){}
public void setContentLengthLong(long p0){}
public void setContentType(String p0){}
public void setLocale(Locale p0){}
public void setResponse(ServletResponse p0){}
}

View File

@@ -0,0 +1,19 @@
// Generated automatically from javax.servlet.ServletSecurityElement for testing purposes
package javax.servlet;
import java.util.Collection;
import javax.servlet.HttpConstraintElement;
import javax.servlet.HttpMethodConstraintElement;
import javax.servlet.annotation.ServletSecurity;
public class ServletSecurityElement extends HttpConstraintElement
{
public Collection<HttpMethodConstraintElement> getHttpMethodConstraints(){ return null; }
public Collection<String> getMethodNames(){ return null; }
public ServletSecurityElement(){}
public ServletSecurityElement(Collection<HttpMethodConstraintElement> p0){}
public ServletSecurityElement(HttpConstraintElement p0){}
public ServletSecurityElement(HttpConstraintElement p0, Collection<HttpMethodConstraintElement> p1){}
public ServletSecurityElement(ServletSecurity p0){}
}

View File

@@ -0,0 +1,22 @@
// Generated automatically from javax.servlet.SessionCookieConfig for testing purposes
package javax.servlet;
public interface SessionCookieConfig
{
String getComment();
String getDomain();
String getName();
String getPath();
boolean isHttpOnly();
boolean isSecure();
int getMaxAge();
void setComment(String p0);
void setDomain(String p0);
void setHttpOnly(boolean p0);
void setMaxAge(int p0);
void setName(String p0);
void setPath(String p0);
void setSecure(boolean p0);
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from javax.servlet.SessionTrackingMode for testing purposes
package javax.servlet;
public enum SessionTrackingMode
{
COOKIE, SSL, URL;
private SessionTrackingMode() {}
}

View File

@@ -0,0 +1,11 @@
// Generated automatically from javax.servlet.WriteListener for testing purposes
package javax.servlet;
import java.util.EventListener;
public interface WriteListener extends EventListener
{
void onError(Throwable p0);
void onWritePossible();
}

View File

@@ -0,0 +1,13 @@
// Generated automatically from javax.servlet.annotation.HttpConstraint for testing purposes
package javax.servlet.annotation;
import java.lang.annotation.Annotation;
import javax.servlet.annotation.ServletSecurity;
public interface HttpConstraint extends Annotation
{
ServletSecurity.EmptyRoleSemantic value();
ServletSecurity.TransportGuarantee transportGuarantee();
String[] rolesAllowed();
}

View File

@@ -0,0 +1,13 @@
// Generated automatically from javax.servlet.annotation.MultipartConfig for testing purposes
package javax.servlet.annotation;
import java.lang.annotation.Annotation;
public interface MultipartConfig extends Annotation
{
String location();
int fileSizeThreshold();
long maxFileSize();
long maxRequestSize();
}

View File

@@ -0,0 +1,21 @@
// Generated automatically from javax.servlet.annotation.ServletSecurity for testing purposes
package javax.servlet.annotation;
import java.lang.annotation.Annotation;
import javax.servlet.annotation.HttpConstraint;
public interface ServletSecurity extends Annotation
{
HttpConstraint value();
static public enum EmptyRoleSemantic
{
DENY, PERMIT;
private EmptyRoleSemantic() {}
}
static public enum TransportGuarantee
{
CONFIDENTIAL, NONE;
private TransportGuarantee() {}
}
}

View File

@@ -0,0 +1,13 @@
// Generated automatically from javax.servlet.descriptor.JspConfigDescriptor for testing purposes
package javax.servlet.descriptor;
import java.util.Collection;
import javax.servlet.descriptor.JspPropertyGroupDescriptor;
import javax.servlet.descriptor.TaglibDescriptor;
public interface JspConfigDescriptor
{
Collection<JspPropertyGroupDescriptor> getJspPropertyGroups();
Collection<TaglibDescriptor> getTaglibs();
}

View File

@@ -0,0 +1,21 @@
// Generated automatically from javax.servlet.descriptor.JspPropertyGroupDescriptor for testing purposes
package javax.servlet.descriptor;
import java.util.Collection;
public interface JspPropertyGroupDescriptor
{
Collection<String> getIncludeCodas();
Collection<String> getIncludePreludes();
Collection<String> getUrlPatterns();
String getBuffer();
String getDefaultContentType();
String getDeferredSyntaxAllowedAsLiteral();
String getElIgnored();
String getErrorOnUndeclaredNamespace();
String getIsXml();
String getPageEncoding();
String getScriptingInvalid();
String getTrimDirectiveWhitespaces();
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from javax.servlet.descriptor.TaglibDescriptor for testing purposes
package javax.servlet.descriptor;
public interface TaglibDescriptor
{
String getTaglibLocation();
String getTaglibURI();
}

View File

@@ -2,8 +2,9 @@
package javax.servlet.http;
import java.io.Serializable;
public class Cookie implements Cloneable
public class Cookie implements Cloneable, Serializable
{
protected Cookie() {}
public Cookie(String p0, String p1){}
@@ -14,10 +15,12 @@ public class Cookie implements Cloneable
public String getPath(){ return null; }
public String getValue(){ return null; }
public boolean getSecure(){ return false; }
public boolean isHttpOnly(){ return false; }
public int getMaxAge(){ return 0; }
public int getVersion(){ return 0; }
public void setComment(String p0){}
public void setDomain(String p0){}
public void setHttpOnly(boolean p0){}
public void setMaxAge(int p0){}
public void setPath(String p0){}
public void setSecure(boolean p0){}

View File

@@ -0,0 +1,13 @@
// Generated automatically from javax.servlet.http.HttpServletMapping for testing purposes
package javax.servlet.http;
import javax.servlet.http.MappingMatch;
public interface HttpServletMapping
{
MappingMatch getMappingMatch();
String getMatchValue();
String getPattern();
String getServletName();
}

View File

@@ -3,19 +3,28 @@
package javax.servlet.http;
import java.security.Principal;
import java.util.Collection;
import java.util.Enumeration;
import java.util.Map;
import javax.servlet.ServletRequest;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletMapping;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.http.Part;
import javax.servlet.http.PushBuilder;
public interface HttpServletRequest extends ServletRequest
{
Collection<Part> getParts();
Cookie[] getCookies();
Enumeration getHeaderNames();
Enumeration getHeaders(String p0);
Enumeration<String> getHeaderNames();
Enumeration<String> getHeaders(String p0);
HttpSession getSession();
HttpSession getSession(boolean p0);
Part getPart(String p0);
Principal getUserPrincipal();
String changeSessionId();
String getAuthType();
String getContextPath();
String getHeader(String p0);
@@ -28,15 +37,22 @@ public interface HttpServletRequest extends ServletRequest
String getRequestedSessionId();
String getServletPath();
StringBuffer getRequestURL();
boolean authenticate(HttpServletResponse p0);
boolean isRequestedSessionIdFromCookie();
boolean isRequestedSessionIdFromURL();
boolean isRequestedSessionIdFromUrl();
boolean isRequestedSessionIdValid();
boolean isUserInRole(String p0);
default HttpServletMapping getHttpServletMapping(){ return null; }
default Map<String, String> getTrailerFields(){ return null; }
default PushBuilder newPushBuilder(){ return null; }
default boolean isTrailerFieldsReady(){ return false; }
int getIntHeader(String p0);
long getDateHeader(String p0);
static String BASIC_AUTH = null;
static String CLIENT_CERT_AUTH = null;
static String DIGEST_AUTH = null;
static String FORM_AUTH = null;
void login(String p0, String p1);
void logout();
}

View File

@@ -0,0 +1,57 @@
// Generated automatically from javax.servlet.http.HttpServletRequestWrapper for testing purposes
package javax.servlet.http;
import java.security.Principal;
import java.util.Collection;
import java.util.Enumeration;
import java.util.Map;
import javax.servlet.ServletRequestWrapper;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletMapping;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.http.Part;
import javax.servlet.http.PushBuilder;
public class HttpServletRequestWrapper extends ServletRequestWrapper implements HttpServletRequest
{
protected HttpServletRequestWrapper() {}
public Collection<Part> getParts(){ return null; }
public Cookie[] getCookies(){ return null; }
public Enumeration<String> getHeaderNames(){ return null; }
public Enumeration<String> getHeaders(String p0){ return null; }
public HttpServletMapping getHttpServletMapping(){ return null; }
public HttpServletRequestWrapper(HttpServletRequest p0){}
public HttpSession getSession(){ return null; }
public HttpSession getSession(boolean p0){ return null; }
public Map<String, String> getTrailerFields(){ return null; }
public Part getPart(String p0){ return null; }
public Principal getUserPrincipal(){ return null; }
public PushBuilder newPushBuilder(){ return null; }
public String changeSessionId(){ return null; }
public String getAuthType(){ return null; }
public String getContextPath(){ return null; }
public String getHeader(String p0){ return null; }
public String getMethod(){ return null; }
public String getPathInfo(){ return null; }
public String getPathTranslated(){ return null; }
public String getQueryString(){ return null; }
public String getRemoteUser(){ return null; }
public String getRequestURI(){ return null; }
public String getRequestedSessionId(){ return null; }
public String getServletPath(){ return null; }
public StringBuffer getRequestURL(){ return null; }
public boolean authenticate(HttpServletResponse p0){ return false; }
public boolean isRequestedSessionIdFromCookie(){ return false; }
public boolean isRequestedSessionIdFromURL(){ return false; }
public boolean isRequestedSessionIdFromUrl(){ return false; }
public boolean isRequestedSessionIdValid(){ return false; }
public boolean isTrailerFieldsReady(){ return false; }
public boolean isUserInRole(String p0){ return false; }
public int getIntHeader(String p0){ return 0; }
public long getDateHeader(String p0){ return 0; }
public void login(String p0, String p1){}
public void logout(){}
}

View File

@@ -0,0 +1,77 @@
// Generated automatically from javax.servlet.http.HttpServletResponse for testing purposes
package javax.servlet.http;
import java.util.Collection;
import java.util.Map;
import java.util.function.Supplier;
import javax.servlet.ServletResponse;
import javax.servlet.http.Cookie;
public interface HttpServletResponse extends ServletResponse
{
Collection<String> getHeaderNames();
Collection<String> getHeaders(String p0);
String encodeRedirectURL(String p0);
String encodeRedirectUrl(String p0);
String encodeURL(String p0);
String encodeUrl(String p0);
String getHeader(String p0);
boolean containsHeader(String p0);
default Supplier<Map<String, String>> getTrailerFields(){ return null; }
default void setTrailerFields(Supplier<Map<String, String>> p0){}
int getStatus();
static int SC_ACCEPTED = 0;
static int SC_BAD_GATEWAY = 0;
static int SC_BAD_REQUEST = 0;
static int SC_CONFLICT = 0;
static int SC_CONTINUE = 0;
static int SC_CREATED = 0;
static int SC_EXPECTATION_FAILED = 0;
static int SC_FORBIDDEN = 0;
static int SC_FOUND = 0;
static int SC_GATEWAY_TIMEOUT = 0;
static int SC_GONE = 0;
static int SC_HTTP_VERSION_NOT_SUPPORTED = 0;
static int SC_INTERNAL_SERVER_ERROR = 0;
static int SC_LENGTH_REQUIRED = 0;
static int SC_METHOD_NOT_ALLOWED = 0;
static int SC_MOVED_PERMANENTLY = 0;
static int SC_MOVED_TEMPORARILY = 0;
static int SC_MULTIPLE_CHOICES = 0;
static int SC_NON_AUTHORITATIVE_INFORMATION = 0;
static int SC_NOT_ACCEPTABLE = 0;
static int SC_NOT_FOUND = 0;
static int SC_NOT_IMPLEMENTED = 0;
static int SC_NOT_MODIFIED = 0;
static int SC_NO_CONTENT = 0;
static int SC_OK = 0;
static int SC_PARTIAL_CONTENT = 0;
static int SC_PAYMENT_REQUIRED = 0;
static int SC_PRECONDITION_FAILED = 0;
static int SC_PROXY_AUTHENTICATION_REQUIRED = 0;
static int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 0;
static int SC_REQUEST_ENTITY_TOO_LARGE = 0;
static int SC_REQUEST_TIMEOUT = 0;
static int SC_REQUEST_URI_TOO_LONG = 0;
static int SC_RESET_CONTENT = 0;
static int SC_SEE_OTHER = 0;
static int SC_SERVICE_UNAVAILABLE = 0;
static int SC_SWITCHING_PROTOCOLS = 0;
static int SC_TEMPORARY_REDIRECT = 0;
static int SC_UNAUTHORIZED = 0;
static int SC_UNSUPPORTED_MEDIA_TYPE = 0;
static int SC_USE_PROXY = 0;
void addCookie(Cookie p0);
void addDateHeader(String p0, long p1);
void addHeader(String p0, String p1);
void addIntHeader(String p0, int p1);
void sendError(int p0);
void sendError(int p0, String p1);
void sendRedirect(String p0);
void setDateHeader(String p0, long p1);
void setHeader(String p0, String p1);
void setIntHeader(String p0, int p1);
void setStatus(int p0);
void setStatus(int p0, String p1);
}

View File

@@ -0,0 +1,39 @@
// Generated automatically from javax.servlet.http.HttpServletResponseWrapper for testing purposes
package javax.servlet.http;
import java.util.Collection;
import java.util.Map;
import java.util.function.Supplier;
import javax.servlet.ServletResponseWrapper;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;
public class HttpServletResponseWrapper extends ServletResponseWrapper implements HttpServletResponse
{
protected HttpServletResponseWrapper() {}
public Collection<String> getHeaderNames(){ return null; }
public Collection<String> getHeaders(String p0){ return null; }
public HttpServletResponseWrapper(HttpServletResponse p0){}
public String encodeRedirectURL(String p0){ return null; }
public String encodeRedirectUrl(String p0){ return null; }
public String encodeURL(String p0){ return null; }
public String encodeUrl(String p0){ return null; }
public String getHeader(String p0){ return null; }
public Supplier<Map<String, String>> getTrailerFields(){ return null; }
public boolean containsHeader(String p0){ return false; }
public int getStatus(){ return 0; }
public void addCookie(Cookie p0){}
public void addDateHeader(String p0, long p1){}
public void addHeader(String p0, String p1){}
public void addIntHeader(String p0, int p1){}
public void sendError(int p0){}
public void sendError(int p0, String p1){}
public void sendRedirect(String p0){}
public void setDateHeader(String p0, long p1){}
public void setHeader(String p0, String p1){}
public void setIntHeader(String p0, int p1){}
public void setStatus(int p0){}
public void setStatus(int p0, String p1){}
public void setTrailerFields(Supplier<Map<String, String>> p0){}
}

View File

@@ -8,7 +8,7 @@ import javax.servlet.http.HttpSessionContext;
public interface HttpSession
{
Enumeration getAttributeNames();
Enumeration<String> getAttributeNames();
HttpSessionContext getSessionContext();
Object getAttribute(String p0);
Object getValue(String p0);

View File

@@ -7,6 +7,6 @@ import javax.servlet.http.HttpSession;
public interface HttpSessionContext
{
Enumeration getIds();
Enumeration<String> getIds();
HttpSession getSession(String p0);
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from javax.servlet.http.MappingMatch for testing purposes
package javax.servlet.http;
public enum MappingMatch
{
CONTEXT_ROOT, DEFAULT, EXACT, EXTENSION, PATH;
private MappingMatch() {}
}

View File

@@ -0,0 +1,20 @@
// Generated automatically from javax.servlet.http.Part for testing purposes
package javax.servlet.http;
import java.io.InputStream;
import java.util.Collection;
public interface Part
{
Collection<String> getHeaderNames();
Collection<String> getHeaders(String p0);
InputStream getInputStream();
String getContentType();
String getHeader(String p0);
String getName();
String getSubmittedFileName();
long getSize();
void delete();
void write(String p0);
}

View File

@@ -0,0 +1,23 @@
// Generated automatically from javax.servlet.http.PushBuilder for testing purposes
package javax.servlet.http;
import java.util.Set;
public interface PushBuilder
{
PushBuilder addHeader(String p0, String p1);
PushBuilder method(String p0);
PushBuilder path(String p0);
PushBuilder queryString(String p0);
PushBuilder removeHeader(String p0);
PushBuilder sessionId(String p0);
PushBuilder setHeader(String p0, String p1);
Set<String> getHeaderNames();
String getHeader(String p0);
String getMethod();
String getPath();
String getQueryString();
String getSessionId();
void push();
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from org.springframework.http.HttpMessage for testing purposes
package org.springframework.http;
import org.springframework.http.HttpHeaders;
public interface HttpMessage
{
HttpHeaders getHeaders();
}

View File

@@ -0,0 +1,14 @@
// Generated automatically from org.springframework.http.HttpRequest for testing purposes
package org.springframework.http;
import java.net.URI;
import org.springframework.http.HttpMessage;
import org.springframework.http.HttpMethod;
public interface HttpRequest extends HttpMessage
{
String getMethodValue();
URI getURI();
default HttpMethod getMethod(){ return null; }
}

View File

@@ -0,0 +1,28 @@
// Generated automatically from org.springframework.http.server.PathContainer for testing purposes
package org.springframework.http.server;
import java.util.List;
public interface PathContainer
{
List<PathContainer.Element> elements();
String value();
default PathContainer subPath(int p0){ return null; }
default PathContainer subPath(int p0, int p1){ return null; }
static PathContainer parsePath(String p0){ return null; }
static PathContainer parsePath(String p0, PathContainer.Options p1){ return null; }
static public class Options
{
protected Options() {}
public boolean shouldDecodeAndParseSegments(){ return false; }
public char separator(){ return '0'; }
public static PathContainer.Options HTTP_PATH = null;
public static PathContainer.Options MESSAGE_ROUTE = null;
public static PathContainer.Options create(char p0, boolean p1){ return null; }
}
static public interface Element
{
String value();
}
}

View File

@@ -0,0 +1,15 @@
// Generated automatically from org.springframework.http.server.RequestPath for testing purposes
package org.springframework.http.server;
import java.net.URI;
import org.springframework.http.server.PathContainer;
public interface RequestPath extends PathContainer
{
PathContainer contextPath();
PathContainer pathWithinApplication();
RequestPath modifyContextPath(String p0);
static RequestPath parse(String p0, String p1){ return null; }
static RequestPath parse(URI p0, String p1){ return null; }
}

View File

@@ -0,0 +1,20 @@
// Generated automatically from org.springframework.web.util.AbstractUriTemplateHandler for testing purposes
package org.springframework.web.util;
import java.net.URI;
import java.util.Map;
import org.springframework.web.util.UriTemplateHandler;
abstract public class AbstractUriTemplateHandler implements UriTemplateHandler
{
protected abstract URI expandInternal(String p0, Map<String, ? extends Object> p1);
protected abstract URI expandInternal(String p0, Object... p1);
public AbstractUriTemplateHandler(){}
public Map<String, ? extends Object> getDefaultUriVariables(){ return null; }
public String getBaseUrl(){ return null; }
public URI expand(String p0, Map<String, ? extends Object> p1){ return null; }
public URI expand(String p0, Object... p1){ return null; }
public void setBaseUrl(String p0){}
public void setDefaultUriVariables(Map<String, ? extends Object> p0){}
}

View File

@@ -0,0 +1,26 @@
// Generated automatically from org.springframework.web.util.ContentCachingRequestWrapper for testing purposes
package org.springframework.web.util;
import java.io.BufferedReader;
import java.util.Enumeration;
import java.util.Map;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
public class ContentCachingRequestWrapper extends HttpServletRequestWrapper
{
protected ContentCachingRequestWrapper() {}
protected void handleContentOverflow(int p0){}
public BufferedReader getReader(){ return null; }
public ContentCachingRequestWrapper(HttpServletRequest p0){}
public ContentCachingRequestWrapper(HttpServletRequest p0, int p1){}
public Enumeration<String> getParameterNames(){ return null; }
public Map<String, String[]> getParameterMap(){ return null; }
public ServletInputStream getInputStream(){ return null; }
public String getCharacterEncoding(){ return null; }
public String getParameter(String p0){ return null; }
public String[] getParameterValues(String p0){ return null; }
public byte[] getContentAsByteArray(){ return null; }
}

View File

@@ -0,0 +1,32 @@
// Generated automatically from org.springframework.web.util.ContentCachingResponseWrapper for testing purposes
package org.springframework.web.util;
import java.io.InputStream;
import java.io.PrintWriter;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;
public class ContentCachingResponseWrapper extends HttpServletResponseWrapper
{
protected ContentCachingResponseWrapper() {}
protected void copyBodyToResponse(boolean p0){}
public ContentCachingResponseWrapper(HttpServletResponse p0){}
public InputStream getContentInputStream(){ return null; }
public PrintWriter getWriter(){ return null; }
public ServletOutputStream getOutputStream(){ return null; }
public byte[] getContentAsByteArray(){ return null; }
public int getContentSize(){ return 0; }
public int getStatusCode(){ return 0; }
public void copyBodyToResponse(){}
public void flushBuffer(){}
public void reset(){}
public void resetBuffer(){}
public void sendError(int p0){}
public void sendError(int p0, String p1){}
public void sendRedirect(String p0){}
public void setBufferSize(int p0){}
public void setContentLength(int p0){}
public void setContentLengthLong(long p0){}
}

View File

@@ -0,0 +1,29 @@
// Generated automatically from org.springframework.web.util.CookieGenerator for testing purposes
package org.springframework.web.util;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
public class CookieGenerator
{
protected Cookie createCookie(String p0){ return null; }
protected final Log logger = null;
public CookieGenerator(){}
public Integer getCookieMaxAge(){ return null; }
public String getCookieDomain(){ return null; }
public String getCookieName(){ return null; }
public String getCookiePath(){ return null; }
public boolean isCookieHttpOnly(){ return false; }
public boolean isCookieSecure(){ return false; }
public static String DEFAULT_COOKIE_PATH = null;
public void addCookie(HttpServletResponse p0, String p1){}
public void removeCookie(HttpServletResponse p0){}
public void setCookieDomain(String p0){}
public void setCookieHttpOnly(boolean p0){}
public void setCookieMaxAge(Integer p0){}
public void setCookieName(String p0){}
public void setCookiePath(String p0){}
public void setCookieSecure(boolean p0){}
}

View File

@@ -0,0 +1,31 @@
// Generated automatically from org.springframework.web.util.DefaultUriBuilderFactory for testing purposes
package org.springframework.web.util;
import java.net.URI;
import java.util.Map;
import org.springframework.web.util.UriBuilder;
import org.springframework.web.util.UriBuilderFactory;
import org.springframework.web.util.UriComponentsBuilder;
public class DefaultUriBuilderFactory implements UriBuilderFactory
{
public DefaultUriBuilderFactory(){}
public DefaultUriBuilderFactory(String p0){}
public DefaultUriBuilderFactory(UriComponentsBuilder p0){}
public DefaultUriBuilderFactory.EncodingMode getEncodingMode(){ return null; }
public Map<String, ? extends Object> getDefaultUriVariables(){ return null; }
public URI expand(String p0, Map<String, ? extends Object> p1){ return null; }
public URI expand(String p0, Object... p1){ return null; }
public UriBuilder builder(){ return null; }
public UriBuilder uriString(String p0){ return null; }
public boolean shouldParsePath(){ return false; }
public void setDefaultUriVariables(Map<String, ? extends Object> p0){}
public void setEncodingMode(DefaultUriBuilderFactory.EncodingMode p0){}
public void setParsePath(boolean p0){}
static public enum EncodingMode
{
NONE, TEMPLATE_AND_VALUES, URI_COMPONENT, VALUES_ONLY;
private EncodingMode() {}
}
}

View File

@@ -0,0 +1,16 @@
// Generated automatically from org.springframework.web.util.HtmlUtils for testing purposes
package org.springframework.web.util;
abstract public class HtmlUtils
{
public HtmlUtils(){}
public static String htmlEscape(String p0){ return null; }
public static String htmlEscape(String p0, String p1){ return null; }
public static String htmlEscapeDecimal(String p0){ return null; }
public static String htmlEscapeDecimal(String p0, String p1){ return null; }
public static String htmlEscapeHex(String p0){ return null; }
public static String htmlEscapeHex(String p0, String p1){ return null; }
public static String htmlUnescape(String p0){ return null; }
}

View File

@@ -0,0 +1,12 @@
// Generated automatically from org.springframework.web.util.ServletContextPropertyUtils for testing purposes
package org.springframework.web.util;
import javax.servlet.ServletContext;
abstract public class ServletContextPropertyUtils
{
public ServletContextPropertyUtils(){}
public static String resolvePlaceholders(String p0, ServletContext p1){ return null; }
public static String resolvePlaceholders(String p0, ServletContext p1, boolean p2){ return null; }
}

View File

@@ -0,0 +1,21 @@
// Generated automatically from org.springframework.web.util.ServletRequestPathUtils for testing purposes
package org.springframework.web.util;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import org.springframework.http.server.RequestPath;
abstract public class ServletRequestPathUtils
{
public ServletRequestPathUtils(){}
public static Object getCachedPath(ServletRequest p0){ return null; }
public static RequestPath getParsedRequestPath(ServletRequest p0){ return null; }
public static RequestPath parseAndCache(HttpServletRequest p0){ return null; }
public static String PATH_ATTRIBUTE = null;
public static String getCachedPathValue(ServletRequest p0){ return null; }
public static boolean hasCachedPath(ServletRequest p0){ return false; }
public static boolean hasParsedRequestPath(ServletRequest p0){ return false; }
public static void clearParsedRequestPath(ServletRequest p0){}
public static void setParsedRequestPath(RequestPath p0, ServletRequest p1){}
}

View File

@@ -0,0 +1,33 @@
// Generated automatically from org.springframework.web.util.UriBuilder for testing purposes
package org.springframework.web.util;
import java.net.URI;
import java.util.Collection;
import java.util.Map;
import java.util.Optional;
import org.springframework.util.MultiValueMap;
public interface UriBuilder
{
URI build(Map<String, ? extends Object> p0);
URI build(Object... p0);
UriBuilder fragment(String p0);
UriBuilder host(String p0);
UriBuilder path(String p0);
UriBuilder pathSegment(String... p0);
UriBuilder port(String p0);
UriBuilder port(int p0);
UriBuilder query(String p0);
UriBuilder queryParam(String p0, Collection<? extends Object> p1);
UriBuilder queryParam(String p0, Object... p1);
UriBuilder queryParamIfPresent(String p0, Optional<? extends Object> p1);
UriBuilder queryParams(MultiValueMap<String, String> p0);
UriBuilder replacePath(String p0);
UriBuilder replaceQuery(String p0);
UriBuilder replaceQueryParam(String p0, Collection<? extends Object> p1);
UriBuilder replaceQueryParam(String p0, Object... p1);
UriBuilder replaceQueryParams(MultiValueMap<String, String> p0);
UriBuilder scheme(String p0);
UriBuilder userInfo(String p0);
}

View File

@@ -0,0 +1,12 @@
// Generated automatically from org.springframework.web.util.UriBuilderFactory for testing purposes
package org.springframework.web.util;
import org.springframework.web.util.UriBuilder;
import org.springframework.web.util.UriTemplateHandler;
public interface UriBuilderFactory extends UriTemplateHandler
{
UriBuilder builder();
UriBuilder uriString(String p0);
}

View File

@@ -0,0 +1,46 @@
// Generated automatically from org.springframework.web.util.UriComponents for testing purposes
package org.springframework.web.util;
import java.io.Serializable;
import java.net.URI;
import java.nio.charset.Charset;
import java.util.List;
import java.util.Map;
import java.util.function.UnaryOperator;
import org.springframework.util.MultiValueMap;
import org.springframework.web.util.UriComponentsBuilder;
abstract public class UriComponents implements Serializable
{
protected UriComponents() {}
abstract UriComponents expandInternal(UriComponents.UriTemplateVariables p0);
protected UriComponents(String p0, String p1){}
protected abstract void copyToUriComponentsBuilder(UriComponentsBuilder p0);
public abstract List<String> getPathSegments();
public abstract MultiValueMap<String, String> getQueryParams();
public abstract String getHost();
public abstract String getPath();
public abstract String getQuery();
public abstract String getSchemeSpecificPart();
public abstract String getUserInfo();
public abstract String toUriString();
public abstract URI toUri();
public abstract UriComponents encode(Charset p0);
public abstract UriComponents normalize();
public abstract int getPort();
public final String getFragment(){ return null; }
public final String getScheme(){ return null; }
public final String toString(){ return null; }
public final UriComponents encode(){ return null; }
public final UriComponents expand(Map<String, ? extends Object> p0){ return null; }
public final UriComponents expand(Object... p0){ return null; }
public final UriComponents expand(UriComponents.UriTemplateVariables p0){ return null; }
static String expandUriComponent(String p0, UriComponents.UriTemplateVariables p1){ return null; }
static String expandUriComponent(String p0, UriComponents.UriTemplateVariables p1, UnaryOperator<String> p2){ return null; }
static public interface UriTemplateVariables
{
Object getValue(String p0);
static Object SKIP_VALUE = null;
}
}

View File

@@ -0,0 +1,63 @@
// Generated automatically from org.springframework.web.util.UriComponentsBuilder for testing purposes
package org.springframework.web.util;
import java.net.InetSocketAddress;
import java.net.URI;
import java.nio.charset.Charset;
import java.util.Collection;
import java.util.Map;
import java.util.Optional;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpRequest;
import org.springframework.util.MultiValueMap;
import org.springframework.web.util.UriBuilder;
import org.springframework.web.util.UriComponents;
public class UriComponentsBuilder implements Cloneable, UriBuilder
{
UriComponentsBuilder adaptFromForwardedHeaders(HttpHeaders p0){ return null; }
protected UriComponentsBuilder(){}
protected UriComponentsBuilder(UriComponentsBuilder p0){}
public Object clone(){ return null; }
public String toUriString(){ return null; }
public URI build(Map<String, ? extends Object> p0){ return null; }
public URI build(Object... p0){ return null; }
public UriComponents build(){ return null; }
public UriComponents build(boolean p0){ return null; }
public UriComponents buildAndExpand(Map<String, ? extends Object> p0){ return null; }
public UriComponents buildAndExpand(Object... p0){ return null; }
public UriComponentsBuilder cloneBuilder(){ return null; }
public UriComponentsBuilder encode(Charset p0){ return null; }
public UriComponentsBuilder fragment(String p0){ return null; }
public UriComponentsBuilder host(String p0){ return null; }
public UriComponentsBuilder path(String p0){ return null; }
public UriComponentsBuilder pathSegment(String... p0){ return null; }
public UriComponentsBuilder port(String p0){ return null; }
public UriComponentsBuilder port(int p0){ return null; }
public UriComponentsBuilder query(String p0){ return null; }
public UriComponentsBuilder queryParam(String p0, Collection<? extends Object> p1){ return null; }
public UriComponentsBuilder queryParam(String p0, Object... p1){ return null; }
public UriComponentsBuilder queryParamIfPresent(String p0, Optional<? extends Object> p1){ return null; }
public UriComponentsBuilder queryParams(MultiValueMap<String, String> p0){ return null; }
public UriComponentsBuilder replacePath(String p0){ return null; }
public UriComponentsBuilder replaceQuery(String p0){ return null; }
public UriComponentsBuilder replaceQueryParam(String p0, Collection<? extends Object> p1){ return null; }
public UriComponentsBuilder replaceQueryParam(String p0, Object... p1){ return null; }
public UriComponentsBuilder replaceQueryParams(MultiValueMap<String, String> p0){ return null; }
public UriComponentsBuilder scheme(String p0){ return null; }
public UriComponentsBuilder schemeSpecificPart(String p0){ return null; }
public UriComponentsBuilder uri(URI p0){ return null; }
public UriComponentsBuilder uriComponents(UriComponents p0){ return null; }
public UriComponentsBuilder uriVariables(Map<String, Object> p0){ return null; }
public UriComponentsBuilder userInfo(String p0){ return null; }
public final UriComponentsBuilder encode(){ return null; }
public static InetSocketAddress parseForwardedFor(HttpRequest p0, InetSocketAddress p1){ return null; }
public static UriComponentsBuilder fromHttpRequest(HttpRequest p0){ return null; }
public static UriComponentsBuilder fromHttpUrl(String p0){ return null; }
public static UriComponentsBuilder fromOriginHeader(String p0){ return null; }
public static UriComponentsBuilder fromPath(String p0){ return null; }
public static UriComponentsBuilder fromUri(URI p0){ return null; }
public static UriComponentsBuilder fromUriString(String p0){ return null; }
public static UriComponentsBuilder newInstance(){ return null; }
}

View File

@@ -0,0 +1,20 @@
// Generated automatically from org.springframework.web.util.UriTemplate for testing purposes
package org.springframework.web.util;
import java.io.Serializable;
import java.net.URI;
import java.util.List;
import java.util.Map;
public class UriTemplate implements Serializable
{
protected UriTemplate() {}
public List<String> getVariableNames(){ return null; }
public Map<String, String> match(String p0){ return null; }
public String toString(){ return null; }
public URI expand(Map<String, ? extends Object> p0){ return null; }
public URI expand(Object... p0){ return null; }
public UriTemplate(String p0){}
public boolean matches(String p0){ return false; }
}

View File

@@ -0,0 +1,12 @@
// Generated automatically from org.springframework.web.util.UriTemplateHandler for testing purposes
package org.springframework.web.util;
import java.net.URI;
import java.util.Map;
public interface UriTemplateHandler
{
URI expand(String p0, Map<String, ? extends Object> p1);
URI expand(String p0, Object... p1);
}

View File

@@ -0,0 +1,40 @@
// Generated automatically from org.springframework.web.util.UriUtils for testing purposes
package org.springframework.web.util;
import java.nio.charset.Charset;
import java.util.Map;
import org.springframework.util.MultiValueMap;
abstract public class UriUtils
{
public UriUtils(){}
public static Map<String, String> encodeUriVariables(Map<String, ? extends Object> p0){ return null; }
public static MultiValueMap<String, String> encodeQueryParams(MultiValueMap<String, String> p0){ return null; }
public static Object[] encodeUriVariables(Object... p0){ return null; }
public static String decode(String p0, Charset p1){ return null; }
public static String decode(String p0, String p1){ return null; }
public static String encode(String p0, Charset p1){ return null; }
public static String encode(String p0, String p1){ return null; }
public static String encodeAuthority(String p0, Charset p1){ return null; }
public static String encodeAuthority(String p0, String p1){ return null; }
public static String encodeFragment(String p0, Charset p1){ return null; }
public static String encodeFragment(String p0, String p1){ return null; }
public static String encodeHost(String p0, Charset p1){ return null; }
public static String encodeHost(String p0, String p1){ return null; }
public static String encodePath(String p0, Charset p1){ return null; }
public static String encodePath(String p0, String p1){ return null; }
public static String encodePathSegment(String p0, Charset p1){ return null; }
public static String encodePathSegment(String p0, String p1){ return null; }
public static String encodePort(String p0, Charset p1){ return null; }
public static String encodePort(String p0, String p1){ return null; }
public static String encodeQuery(String p0, Charset p1){ return null; }
public static String encodeQuery(String p0, String p1){ return null; }
public static String encodeQueryParam(String p0, Charset p1){ return null; }
public static String encodeQueryParam(String p0, String p1){ return null; }
public static String encodeScheme(String p0, Charset p1){ return null; }
public static String encodeScheme(String p0, String p1){ return null; }
public static String encodeUserInfo(String p0, Charset p1){ return null; }
public static String encodeUserInfo(String p0, String p1){ return null; }
public static String extractFileExtension(String p0){ return null; }
}

View File

@@ -0,0 +1,44 @@
// Generated automatically from org.springframework.web.util.UrlPathHelper for testing purposes
package org.springframework.web.util;
import java.util.Map;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import org.springframework.util.MultiValueMap;
public class UrlPathHelper
{
protected String determineEncoding(HttpServletRequest p0){ return null; }
protected String getDefaultEncoding(){ return null; }
protected String getPathWithinServletMapping(HttpServletRequest p0, String p1){ return null; }
public Map<String, String> decodePathVariables(HttpServletRequest p0, Map<String, String> p1){ return null; }
public MultiValueMap<String, String> decodeMatrixVariables(HttpServletRequest p0, MultiValueMap<String, String> p1){ return null; }
public String decodeRequestString(HttpServletRequest p0, String p1){ return null; }
public String getContextPath(HttpServletRequest p0){ return null; }
public String getLookupPathForRequest(HttpServletRequest p0){ return null; }
public String getLookupPathForRequest(HttpServletRequest p0, String p1){ return null; }
public String getOriginatingContextPath(HttpServletRequest p0){ return null; }
public String getOriginatingQueryString(HttpServletRequest p0){ return null; }
public String getOriginatingRequestUri(HttpServletRequest p0){ return null; }
public String getOriginatingServletPath(HttpServletRequest p0){ return null; }
public String getPathWithinApplication(HttpServletRequest p0){ return null; }
public String getPathWithinServletMapping(HttpServletRequest p0){ return null; }
public String getRequestUri(HttpServletRequest p0){ return null; }
public String getServletPath(HttpServletRequest p0){ return null; }
public String removeSemicolonContent(String p0){ return null; }
public String resolveAndCacheLookupPath(HttpServletRequest p0){ return null; }
public UrlPathHelper(){}
public boolean isUrlDecode(){ return false; }
public boolean shouldRemoveSemicolonContent(){ return false; }
public static String PATH_ATTRIBUTE = null;
public static String getResolvedLookupPath(ServletRequest p0){ return null; }
public static UrlPathHelper defaultInstance = null;
public static UrlPathHelper rawPathInstance = null;
public void setAlwaysUseFullPath(boolean p0){}
public void setDefaultEncoding(String p0){}
public void setRemoveSemicolonContent(boolean p0){}
public void setUrlDecode(boolean p0){}
static Boolean websphereComplianceFlag = null;
static boolean servlet4Present = false;
}

View File

@@ -0,0 +1,69 @@
// Generated automatically from org.springframework.web.util.WebUtils for testing purposes
package org.springframework.web.util;
import java.io.File;
import java.util.Collection;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.http.HttpRequest;
import org.springframework.util.MultiValueMap;
abstract public class WebUtils
{
public WebUtils(){}
public static <T> T getNativeRequest(ServletRequest p0, Class<T> p1){ return null; }
public static <T> T getNativeResponse(ServletResponse p0, Class<T> p1){ return null; }
public static Boolean getDefaultHtmlEscape(ServletContext p0){ return null; }
public static Boolean getResponseEncodedHtmlEscape(ServletContext p0){ return null; }
public static Cookie getCookie(HttpServletRequest p0, String p1){ return null; }
public static File getTempDir(ServletContext p0){ return null; }
public static Map<String, Object> getParametersStartingWith(ServletRequest p0, String p1){ return null; }
public static MultiValueMap<String, String> parseMatrixVariables(String p0){ return null; }
public static Object getRequiredSessionAttribute(HttpServletRequest p0, String p1){ return null; }
public static Object getSessionAttribute(HttpServletRequest p0, String p1){ return null; }
public static Object getSessionMutex(HttpSession p0){ return null; }
public static String CONTENT_TYPE_CHARSET_PREFIX = null;
public static String DEFAULT_CHARACTER_ENCODING = null;
public static String DEFAULT_WEB_APP_ROOT_KEY = null;
public static String ERROR_EXCEPTION_ATTRIBUTE = null;
public static String ERROR_EXCEPTION_TYPE_ATTRIBUTE = null;
public static String ERROR_MESSAGE_ATTRIBUTE = null;
public static String ERROR_REQUEST_URI_ATTRIBUTE = null;
public static String ERROR_SERVLET_NAME_ATTRIBUTE = null;
public static String ERROR_STATUS_CODE_ATTRIBUTE = null;
public static String FORWARD_CONTEXT_PATH_ATTRIBUTE = null;
public static String FORWARD_PATH_INFO_ATTRIBUTE = null;
public static String FORWARD_QUERY_STRING_ATTRIBUTE = null;
public static String FORWARD_REQUEST_URI_ATTRIBUTE = null;
public static String FORWARD_SERVLET_PATH_ATTRIBUTE = null;
public static String HTML_ESCAPE_CONTEXT_PARAM = null;
public static String INCLUDE_CONTEXT_PATH_ATTRIBUTE = null;
public static String INCLUDE_PATH_INFO_ATTRIBUTE = null;
public static String INCLUDE_QUERY_STRING_ATTRIBUTE = null;
public static String INCLUDE_REQUEST_URI_ATTRIBUTE = null;
public static String INCLUDE_SERVLET_PATH_ATTRIBUTE = null;
public static String RESPONSE_ENCODED_HTML_ESCAPE_CONTEXT_PARAM = null;
public static String SESSION_MUTEX_ATTRIBUTE = null;
public static String TEMP_DIR_CONTEXT_ATTRIBUTE = null;
public static String WEB_APP_ROOT_KEY_PARAM = null;
public static String findParameterValue(Map<String, ? extends Object> p0, String p1){ return null; }
public static String findParameterValue(ServletRequest p0, String p1){ return null; }
public static String getRealPath(ServletContext p0, String p1){ return null; }
public static String getSessionId(HttpServletRequest p0){ return null; }
public static String[] SUBMIT_IMAGE_SUFFIXES = null;
public static boolean hasSubmitParameter(ServletRequest p0, String p1){ return false; }
public static boolean isIncludeRequest(ServletRequest p0){ return false; }
public static boolean isSameOrigin(HttpRequest p0){ return false; }
public static boolean isValidOrigin(HttpRequest p0, Collection<String> p1){ return false; }
public static void clearErrorRequestAttributes(HttpServletRequest p0){}
public static void exposeErrorRequestAttributes(HttpServletRequest p0, Throwable p1, String p2){}
public static void removeWebAppRootSystemProperty(ServletContext p0){}
public static void setSessionAttribute(HttpServletRequest p0, String p1, Object p2){}
public static void setWebAppRootSystemProperty(ServletContext p0){}
}