You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2010/09/27 09:02:49 UTC
svn commit: r1001602 - in /sling/trunk/contrib/extensions/rewriter: ./
src/main/java/org/apache/sling/rewriter/
src/main/java/org/apache/sling/rewriter/impl/
Author: cziegeler
Date: Mon Sep 27 07:02:48 2010
New Revision: 1001602
URL: http://svn.apache.org/viewvc?rev=1001602&view=rev
Log:
Only finish pipeline if no error occured
Modified:
sling/trunk/contrib/extensions/rewriter/pom.xml
sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/Processor.java
sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/PipelineImpl.java
sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/ProcessorWrapper.java
sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterFilter.java
sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterResponse.java
Modified: sling/trunk/contrib/extensions/rewriter/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/pom.xml?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/pom.xml (original)
+++ sling/trunk/contrib/extensions/rewriter/pom.xml Mon Sep 27 07:02:48 2010
@@ -83,7 +83,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr.annotations</artifactId>
- <version>1.2.0</version>
+ <version>1.3.0</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -101,7 +101,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.commons.osgi</artifactId>
- <version>2.0.4-incubator</version>
+ <version>2.0.6</version>
<scope>provided</scope>
</dependency>
<dependency>
Modified: sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/Processor.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/Processor.java?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/Processor.java (original)
+++ sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/Processor.java Mon Sep 27 07:02:48 2010
@@ -50,6 +50,7 @@ public interface Processor {
/**
* Clean up the processor.
* This method should always be called after a processor run, regardless if it was successfull or failed.
+ * @param errorOcurred Indicates if an error occured during processing
*/
- void finished() throws IOException;
+ void finished(boolean errorOccured) throws IOException;
}
Modified: sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/PipelineImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/PipelineImpl.java?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/PipelineImpl.java (original)
+++ sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/PipelineImpl.java Mon Sep 27 07:02:48 2010
@@ -172,18 +172,21 @@ public class PipelineImpl implements Pro
}
/**
- * @see org.apache.sling.rewriter.Processor#finished()
+ * @see org.apache.sling.rewriter.Processor#finished(boolean)
*/
- public void finished() throws IOException {
+ public void finished(final boolean errorOccured) throws IOException {
IOException ioe = null;
- try {
- this.generator.finished();
- } catch (SAXException se) {
- if ( se.getCause() != null && se.getCause() instanceof IOException ) {
- ioe = (IOException)se.getCause();
- } else {
- ioe = new IOException("Pipeline exception: " + se.getMessage());
- ioe.initCause(se);
+ // if an error occured, we only clean up
+ if ( !errorOccured ) {
+ try {
+ this.generator.finished();
+ } catch (SAXException se) {
+ if ( se.getCause() != null && se.getCause() instanceof IOException ) {
+ ioe = (IOException)se.getCause();
+ } else {
+ ioe = new IOException("Pipeline exception: " + se.getMessage());
+ ioe.initCause(se);
+ }
}
}
// now dispose component
Modified: sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/ProcessorWrapper.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/ProcessorWrapper.java?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/ProcessorWrapper.java (original)
+++ sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/ProcessorWrapper.java Mon Sep 27 07:02:48 2010
@@ -41,10 +41,10 @@ public class ProcessorWrapper implements
}
/**
- * @see org.apache.sling.rewriter.Processor#finished()
+ * @see org.apache.sling.rewriter.Processor#finished(boolean)
*/
- public void finished() throws IOException {
- delegatee.finished();
+ public void finished(final boolean errorOccured) throws IOException {
+ delegatee.finished(errorOccured);
}
/**
Modified: sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterFilter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterFilter.java?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterFilter.java (original)
+++ sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterFilter.java Mon Sep 27 07:02:48 2010
@@ -79,10 +79,12 @@ public class RewriterFilter implements F
final RewriterResponse rewriterResponse =
new RewriterResponse(slingRequest, slingResponse, this.pipelineManager);
+ boolean errorOccured = true;
try {
chain.doFilter(request, rewriterResponse);
+ errorOccured = false;
} finally {
- rewriterResponse.finished();
+ rewriterResponse.finished(errorOccured);
}
}
}
Modified: sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterResponse.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterResponse.java?rev=1001602&r1=1001601&r2=1001602&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterResponse.java (original)
+++ sling/trunk/contrib/extensions/rewriter/src/main/java/org/apache/sling/rewriter/impl/RewriterResponse.java Mon Sep 27 07:02:48 2010
@@ -127,9 +127,9 @@ class RewriterResponse
* Inform this response that the request processing is finished.
* @throws IOException
*/
- public void finished() throws IOException {
+ public void finished(final boolean errorOccured) throws IOException {
if ( this.processor != null ) {
- this.processor.finished();
+ this.processor.finished(errorOccured);
this.processor = null;
}
}