Interface RemoteContentRendererRequestHandler
-
public interface RemoteContentRendererRequestHandler
Interface for OSGi service implementations capable of processing requests sent to a remote content rendering endpoint
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description boolean
canHandle(SlingHttpServletRequest servletRequest)
Should the currentRemoteContentRendererRequestHandler
implementation be used to process the requestHttpUriRequest
getRequest(SlingHttpServletRequest servletRequest, ComponentExporter componentExporter)
Returns the request object that can be executed by aHttpClient
implementationRequestConfig
getRequestConfig(SlingHttpServletRequest servletRequest)
Returns the configuration that will be used to execute the remote requestjava.lang.String
getResponseMessage(CloseableHttpResponse httpResponse)
Returns the potentially processed response from the remote content rendering endpointdefault java.lang.Class<? extends ComponentExporter>[]
getSlingModelAdapterClasses()
Returns the list of classes that the Sling Model Exporter should try to adapt the request to
-
-
-
Method Detail
-
canHandle
boolean canHandle(@Nonnull SlingHttpServletRequest servletRequest)
Should the currentRemoteContentRendererRequestHandler
implementation be used to process the request- Parameters:
servletRequest
- The AEM internal servlet request- Returns:
- true if the Handler can process the request
-
getRequestConfig
@Nullable RequestConfig getRequestConfig(@Nonnull SlingHttpServletRequest servletRequest)
Returns the configuration that will be used to execute the remote request- Parameters:
servletRequest
- The AEM internal servlet request- Returns:
- The
RequestConfig
configuration object
-
getRequest
@Nonnull HttpUriRequest getRequest(@Nonnull SlingHttpServletRequest servletRequest, @Nonnull ComponentExporter componentExporter) throws RemoteContentRenderingException
Returns the request object that can be executed by aHttpClient
implementation- Parameters:
servletRequest
- The AEM internal servlet requestcomponentExporter
- The data model to be serialized and sent to the remote endpoint- Returns:
- An implementation of
HttpUriRequest
- Throws:
RemoteContentRenderingException
- exception due to an invalid servlet request
-
getResponseMessage
@Nonnull java.lang.String getResponseMessage(@Nonnull CloseableHttpResponse httpResponse) throws java.io.IOException
Returns the potentially processed response from the remote content rendering endpoint- Parameters:
httpResponse
- Response to the request sent to the remote endpoint- Returns:
- The processed response text to be injected in servlets SlingHttpServletResponse
- Throws:
java.io.IOException
- exception when reading from theCloseableHttpResponse
-
getSlingModelAdapterClasses
@Nonnull default java.lang.Class<? extends ComponentExporter>[] getSlingModelAdapterClasses()
Returns the list of classes that the Sling Model Exporter should try to adapt the request to- Returns:
- The list of classes
-
-