You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2009/03/06 00:07:05 UTC
svn commit: r750663 - in /cxf/trunk:
common/common/src/main/java/org/apache/cxf/common/util/
rt/core/src/main/java/org/apache/cxf/interceptor/
rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/
systests/src/test/resources/jaxrs_atom/WEB-...
Author: sergeyb
Date: Thu Mar 5 23:07:05 2009
New Revision: 750663
URL: http://svn.apache.org/viewvc?rev=750663&view=rev
Log:
Minor updates to do with output buffering
Modified:
cxf/trunk/common/common/src/main/java/org/apache/cxf/common/util/SystemUtils.java
cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractOutDatabindingInterceptor.java
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/JAXRSOutInterceptor.java
cxf/trunk/systests/src/test/resources/jaxrs_atom/WEB-INF/beans.xml
Modified: cxf/trunk/common/common/src/main/java/org/apache/cxf/common/util/SystemUtils.java
URL: http://svn.apache.org/viewvc/cxf/trunk/common/common/src/main/java/org/apache/cxf/common/util/SystemUtils.java?rev=750663&r1=750662&r2=750663&view=diff
==============================================================================
--- cxf/trunk/common/common/src/main/java/org/apache/cxf/common/util/SystemUtils.java (original)
+++ cxf/trunk/common/common/src/main/java/org/apache/cxf/common/util/SystemUtils.java Thu Mar 5 23:07:05 2009
@@ -25,7 +25,6 @@
*/
public final class SystemUtils {
- public static final String OUT_BUFFERING = "org.apache.cxf.output.buffering";
public static final String SPRING_VALIDATION_MODE = "org.apache.cxf.spring.validation.mode";
private SystemUtils() {
@@ -33,22 +32,6 @@
}
/**
- * Checks org.apache.cxf.output.buffering property value, defaults to false
- * @return true if output buffering is enabled
- */
- public static boolean isBufferingEnabled() {
- return Boolean.getBoolean(System.getProperty(OUT_BUFFERING, "false"));
- }
-
- /**
- * Checks if org.apache.cxf.output.buffering property was explicitly set
- * @return true if it was set
- */
- public static boolean isBufferingSet() {
- return System.getProperty(OUT_BUFFERING) != null;
- }
-
- /**
* Gets org.apache.cxf.spring.validation.mode property value if available
* @return Spring validation mode
*/
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractOutDatabindingInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractOutDatabindingInterceptor.java?rev=750663&r1=750662&r2=750663&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractOutDatabindingInterceptor.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/AbstractOutDatabindingInterceptor.java Thu Mar 5 23:07:05 2009
@@ -29,7 +29,6 @@
import javax.xml.stream.events.XMLEvent;
import javax.xml.validation.Schema;
-import org.apache.cxf.common.util.SystemUtils;
import org.apache.cxf.databinding.DataWriter;
import org.apache.cxf.endpoint.Endpoint;
import org.apache.cxf.message.Attachment;
@@ -49,7 +48,7 @@
public abstract class AbstractOutDatabindingInterceptor extends AbstractPhaseInterceptor<Message> {
public static final String DISABLE_OUTPUTSTREAM_OPTIMIZATION = "disable.outputstream.optimization";
-
+ public static final String OUT_BUFFERING = "org.apache.cxf.output.buffering";
public AbstractOutDatabindingInterceptor(String phase) {
super(phase);
@@ -75,7 +74,7 @@
// need to cache the events in case validation fails or buffering is enabled
if (shouldValidate(message) && !isRequestor(message)
- || SystemUtils.isBufferingEnabled()) {
+ || isBufferingEnabled(message)) {
cache = new CachingXmlEventWriter();
try {
cache.setNamespaceContext(origXmlWriter.getNamespaceContext());
@@ -128,6 +127,11 @@
}
+ protected boolean isBufferingEnabled(Message m) {
+ Object en = m.getContextualProperty(OUT_BUFFERING);
+ return Boolean.TRUE.equals(en) || "true".equals(en);
+ }
+
protected boolean shouldValidate(Message m) {
Object en = m.getContextualProperty(Message.SCHEMA_VALIDATION_ENABLED);
return Boolean.TRUE.equals(en) || "true".equals(en);
Modified: cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/JAXRSOutInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/JAXRSOutInterceptor.java?rev=750663&r1=750662&r2=750663&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/JAXRSOutInterceptor.java (original)
+++ cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/interceptor/JAXRSOutInterceptor.java Thu Mar 5 23:07:05 2009
@@ -38,7 +38,6 @@
import org.apache.cxf.common.i18n.BundleUtils;
import org.apache.cxf.common.logging.LogUtils;
-import org.apache.cxf.common.util.SystemUtils;
import org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor;
import org.apache.cxf.io.CachedOutputStream;
import org.apache.cxf.jaxrs.ext.ResponseHandler;
@@ -202,8 +201,9 @@
if (!firstTry) {
return false;
}
- boolean enabled = SystemUtils.isBufferingEnabled();
- if (!enabled && !SystemUtils.isBufferingSet()) {
+ Object outBuf = m.getContextualProperty(OUT_BUFFERING);
+ boolean enabled = Boolean.TRUE.equals(outBuf) || "true".equals(outBuf);
+ if (!enabled && outBuf == null) {
enabled = InjectionUtils.invokeBooleanGetter(w, "getEnableBuffering");
}
if (enabled) {
Modified: cxf/trunk/systests/src/test/resources/jaxrs_atom/WEB-INF/beans.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/resources/jaxrs_atom/WEB-INF/beans.xml?rev=750663&r1=750662&r2=750663&view=diff
==============================================================================
--- cxf/trunk/systests/src/test/resources/jaxrs_atom/WEB-INF/beans.xml (original)
+++ cxf/trunk/systests/src/test/resources/jaxrs_atom/WEB-INF/beans.xml Thu Mar 5 23:07:05 2009
@@ -80,6 +80,9 @@
<jaxrs:extensionMappings>
<entry key="json" value="application/json"/>
</jaxrs:extensionMappings>
+ <jaxrs:properties>
+ <entry key="org.apache.cxf.output.buffering" value="true"/>
+ </jaxrs:properties>
</jaxrs:server>
<bean id="atomstore" class="org.apache.cxf.systest.jaxrs.AtomBookStore"/>