2014-06-04 15:25 GMT+04:00  <ma...@apache.org>:
> Author: markt
> Date: Wed Jun  4 11:25:51 2014
> New Revision: 1600109
>
> URL: http://svn.apache.org/r1600109
> Log:
> Refactoring.
> Switch from a boolean to an Enum for error state so we can differentiate 
> between an error that requires the connection is closed after the current 
> response is completed and an error that requires that the connection is 
> closed immediately.
> This commit should be a NO-OP. While the different error states are set, the 
> only the presence of an error (or not) is tested - i.e. no change from the 
> implementation prior to this commit.
> Try to be consistent when an error occurs. Set the status code first (if 
> required), then set the error state and finally log (if required).
>
> Added:
>     tomcat/trunk/java/org/apache/coyote/ErrorState.java   (with props)
> Modified:
>     tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java
>     tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
>     tomcat/trunk/java/org/apache/coyote/ajp/AjpNio2Processor.java
>     tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
>     tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java
>     tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
>     tomcat/trunk/java/org/apache/coyote/http11/Http11Nio2Processor.java
>     tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java
>     tomcat/trunk/java/org/apache/coyote/spdy/SpdyProcessor.java
>
> Modified: tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java
> URL: 
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java?rev=1600109&r1=1600108&r2=1600109&view=diff
> ==============================================================================
> --- tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java (original)
> +++ tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java Wed Jun  4 
> 11:25:51 2014
> @@ -40,9 +40,9 @@ public abstract class AbstractProcessor<
>      protected SocketWrapper<S> socketWrapper = null;
>
>      /**
> -     * Error flag.
> +     * Error state for the request/response currently being processed.
>       */
> -    protected boolean error;
> +    private ErrorState errorState;

You have to assign ErrorState.NONE here by default.
Otherwise I expect "setErrorState" to fail with NPE.

> +    protected void setErrorState(ErrorState errorState) {
> +        this.errorState = this.errorState.getMostSevere(errorState);
> +    }
> +
> +
> +    protected void resetErrorState() {
> +        errorState = ErrorState.NONE;
> +    }
> +
> +
> +    protected ErrorState getErrorState() {
> +        return errorState;
> +    }

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to