Package org.n52.web.ctrl
Class BaseController
- java.lang.Object
-
- org.n52.web.ctrl.BaseController
-
- Direct Known Subclasses:
DataController,ParameterController,ResourcesController,SearchController,StationsParameterController
@RestController public abstract class BaseController extends Object
Serves as central
ExceptionHandlerfor all Web bindings inheriting from this class.WebExceptions indicate an expected workflows while unexpected exceptions are automatically wrapped toInternalServerExceptions as fallback.Developers should consider to add hints via
WebException.addHint(String)so that as much information is communicated to the caller as possible.
-
-
Constructor Summary
Constructors Constructor Description BaseController()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected org.springframework.util.MultiValueMap<String,String>addAdditionalParameter(org.springframework.util.MultiValueMap<String,String> query)protected voidaddCacheHeader(javax.servlet.http.HttpServletResponse response, long maxAge)protected abstract voidaddCacheHeader(IoParameters parameter, javax.servlet.http.HttpServletResponse response)protected org.springframework.util.MultiValueMap<String,String>addHrefBase(org.springframework.util.MultiValueMap<String,String> query)StringcreateCollectionUrl(String collectionName)protected com.fasterxml.jackson.databind.ObjectMappercreateObjectMapper()protected IoParameterscreateParameters(String datasetId, Map<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected IoParameterscreateParameters(String datasetId, org.springframework.util.MultiValueMap<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected IoParameterscreateParameters(Map<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected IoParameterscreateParameters(RequestSimpleParameterSet query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected IoParameterscreateParameters(RequestStyledParameterSet query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected IoParameterscreateParameters(org.springframework.util.MultiValueMap<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)protected HelgolandConfigurationgetConfig()protected BiConsumer<String,IoParseException>getExceptionHandle()StringgetExternalUrl()protected StringgetResourcePathFrom(String path)voidhandle400(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)voidhandle404(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)voidhandle500(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)voidhandleException(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)protected booleanisRequestingJsonData(javax.servlet.http.HttpServletRequest request)protected booleanisRequestingPdfData(javax.servlet.http.HttpServletRequest request)protected booleanisRequestingPngData(javax.servlet.http.HttpServletRequest request)voidsetExternalUrl(String externalUrl)protected StringvalidateResponseSplitting(String value)
-
-
-
Method Detail
-
getConfig
protected HelgolandConfiguration getConfig()
-
getExternalUrl
public String getExternalUrl()
-
setExternalUrl
public void setExternalUrl(String externalUrl)
-
getExceptionHandle
protected BiConsumer<String,IoParseException> getExceptionHandle()
-
createParameters
protected IoParameters createParameters(RequestSimpleParameterSet query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
createParameters
protected IoParameters createParameters(RequestStyledParameterSet query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
createParameters
protected IoParameters createParameters(org.springframework.util.MultiValueMap<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
createParameters
protected IoParameters createParameters(String datasetId, org.springframework.util.MultiValueMap<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
createParameters
protected IoParameters createParameters(Map<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
createParameters
protected IoParameters createParameters(String datasetId, Map<String,String> query, String httpLocale, javax.servlet.http.HttpServletResponse response)
-
isRequestingJsonData
protected boolean isRequestingJsonData(javax.servlet.http.HttpServletRequest request)
-
isRequestingPdfData
protected boolean isRequestingPdfData(javax.servlet.http.HttpServletRequest request)
-
isRequestingPngData
protected boolean isRequestingPngData(javax.servlet.http.HttpServletRequest request)
-
handle400
@ExceptionHandler({BadRequestException.class,BadQueryParameterException.class}) public void handle400(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
handle404
@ExceptionHandler(ResourceNotFoundException.class) public void handle404(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
handle500
@ExceptionHandler(InternalServerException.class) public void handle500(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
handleException
@ExceptionHandler({java.lang.RuntimeException.class,java.lang.Exception.class,java.lang.Throwable.class}) public void handleException(Exception e, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
createObjectMapper
protected com.fasterxml.jackson.databind.ObjectMapper createObjectMapper()
-
addCacheHeader
protected abstract void addCacheHeader(IoParameters parameter, javax.servlet.http.HttpServletResponse response)
-
addCacheHeader
protected void addCacheHeader(javax.servlet.http.HttpServletResponse response, long maxAge)
-
addHrefBase
protected org.springframework.util.MultiValueMap<String,String> addHrefBase(org.springframework.util.MultiValueMap<String,String> query)
-
-