You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by je...@apache.org on 2019/08/21 13:50:36 UTC
[sling-whiteboard] 02/03: Merge branch 'master' of
https://github.com/apache/sling-whiteboard.git
This is an automated email from the ASF dual-hosted git repository.
jeb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git
commit 778e87fe1be6e709ec86980e2788585fc88f7523
Merge: 628e998 ff54658
Author: JE Bailey <ja...@sas.com>
AuthorDate: Wed Aug 21 09:49:22 2019 -0400
Merge branch 'master' of https://github.com/apache/sling-whiteboard.git
Conflicts:
transformer/src/main/java/org/apache/sling/transformer/impl/Process.java
transformer/src/main/java/org/apache/sling/transformer/impl/ProcessManager.java
transformer/src/main/java/org/apache/sling/transformer/impl/RewriterResponse.java
transformer/src/main/java/org/apache/sling/transformer/impl/TransformationFilter.java
.../org/apache/sling/transformer/impl/Process.java | 16 +--
.../sling/transformer/impl/ProcessManager.java | 81 ++++++++++++++
.../sling/transformer/impl/RewriterResponse.java | 116 +++++++++++++++++++++
.../transformer/impl/TransformationFilter.java | 28 ++---
4 files changed, 215 insertions(+), 26 deletions(-)
diff --cc transformer/src/main/java/org/apache/sling/transformer/impl/Process.java
index c10b057,18ab00d..399950e
--- a/transformer/src/main/java/org/apache/sling/transformer/impl/Process.java
+++ b/transformer/src/main/java/org/apache/sling/transformer/impl/Process.java
@@@ -35,18 -31,18 +35,17 @@@ import org.osgi.annotation.versioning.P
* BiConsumer<Element,TagMapping> lambda.
*
* This allows you to use the next() method to collect the elements that will be
-- * passed on to the stream method. This can modify the eventual output and assists in use cases where
-- * there is a need to add or remove elements
++ * passed on to the stream method. This can modify the eventual output and
++ * assists in use cases where there is a need to add or remove elements
*
*/
@ProviderType
-public class Process {
+public class Process implements ProcessingContext {
private List<HtmlElement> list = new ArrayList<>();
-- private Map<String,Object> context = new HashMap<>();
++ private Map<String, Object> context = new HashMap<>();
private SlingHttpServletRequest request;
private SlingHttpServletResponse response;
--
private Process(SlingHttpServletRequest request, SlingHttpServletResponse response) {
this.request = request;
@@@ -61,7 -57,7 +60,7 @@@
public void next(HtmlElement... elements) {
Collections.addAll(list, elements);
}
--
++
public void next(String html) {
Collections.addAll(list, Html.stream(html).toArray(HtmlElement[]::new));
}
@@@ -69,11 -65,11 +68,11 @@@
public Stream<HtmlElement> getElements() {
return list.stream();
}
--
-- public Map<String,Object> getContext(){
++
++ public Map<String, Object> getContext() {
return context;
}
--
++
public SlingHttpServletResponse getResponse() {
return response;
}
@@@ -81,14 -77,4 +80,15 @@@
public SlingHttpServletRequest getRequest() {
return request;
}
+
+ @Override
+ public PrintWriter getWriter() throws IOException {
+ return response.getWriter();
+ }
+
+ @Override
+ public OutputStream getOutputStream() throws IOException {
+ return response.getOutputStream();
+ }
++
}
diff --cc transformer/src/main/java/org/apache/sling/transformer/impl/TransformationFilter.java
index 2aadb36,d21616c..905d57b
--- a/transformer/src/main/java/org/apache/sling/transformer/impl/TransformationFilter.java
+++ b/transformer/src/main/java/org/apache/sling/transformer/impl/TransformationFilter.java
@@@ -36,15 -36,15 +36,8 @@@ import org.osgi.service.component.annot
* This filter activates the rewriter for the output.
*
*/
--@Component(
-- service = Filter.class,
-- property = {
-- Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
-- "sling.filter.scope=request",
-- "sling.filter.scope=error",
-- Constants.SERVICE_RANKING + ":Integer=2500"
-- }
--)
++@Component(service = Filter.class, property = { Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
++ "sling.filter.scope=request", "sling.filter.scope=error", Constants.SERVICE_RANKING + ":Integer=2500" })
public class TransformationFilter implements Filter {
@Reference
@@@ -67,21 -67,21 +60,20 @@@
}
/**
-- * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
++ * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
++ * javax.servlet.ServletResponse, javax.servlet.FilterChain)
*/
@Override
-- public void doFilter(ServletRequest request,
-- ServletResponse response,
-- FilterChain chain)
-- throws IOException, ServletException {
-- if ( ! (request instanceof SlingHttpServletRequest)) {
++ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
++ throws IOException, ServletException {
++ if (!(request instanceof SlingHttpServletRequest)) {
throw new ServletException("Request is not a Apache Sling HTTP request.");
}
final SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
final SlingHttpServletResponse slingResponse = (SlingHttpServletResponse) response;
- final TransformerResponse rewriterResponse =
- new TransformerResponse(slingRequest, slingResponse);
- final RewriterResponse rewriterResponse =
- new RewriterResponse(slingRequest, slingResponse);
++ final TransformerResponse rewriterResponse = new TransformerResponse(slingRequest, slingResponse);
++
boolean errorOccured = true;
try {
chain.doFilter(request, rewriterResponse);
@@@ -89,5 -89,5 +81,5 @@@
} finally {
rewriterResponse.finished(errorOccured);
}
-- }
++ }
}