You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by fh...@apache.org on 2012/03/01 19:27:57 UTC
svn commit: r1295724 - in /tomcat/trunk/webapps/examples/WEB-INF:
classes/websocket/EchoMessage.java web.xml
Author: fhanik
Date: Thu Mar 1 18:27:56 2012
New Revision: 1295724
URL: http://svn.apache.org/viewvc?rev=1295724&view=rev
Log:
Allow the examples to configure the buffer on the fly
Modified:
tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java
tomcat/trunk/webapps/examples/WEB-INF/web.xml
Modified: tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java?rev=1295724&r1=1295723&r2=1295724&view=diff
==============================================================================
--- tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java (original)
+++ tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java Thu Mar 1 18:27:56 2012
@@ -20,6 +20,8 @@ import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
+import javax.servlet.ServletException;
+
import org.apache.catalina.websocket.MessageInbound;
import org.apache.catalina.websocket.StreamInbound;
import org.apache.catalina.websocket.WebSocketServlet;
@@ -28,13 +30,40 @@ import org.apache.catalina.websocket.Web
public class EchoMessage extends WebSocketServlet {
private static final long serialVersionUID = 1L;
+ private volatile int byteBufSize;
+ private volatile int charBufSize;
+
+ @Override
+ public void init() throws ServletException {
+ super.init();
+ byteBufSize = getInitParameterIntValue("byteBufferMaxSize", 2097152);
+ charBufSize = getInitParameterIntValue("charBufferMaxSize", 2097152);
+ }
+
+ public int getInitParameterIntValue(String name, int defaultValue) {
+ String val = this.getInitParameter(name);
+ int result = defaultValue;
+ try {
+ result = Integer.parseInt(val);
+ }catch (Exception x) {
+ }
+ return result;
+ }
+
+
@Override
protected StreamInbound createWebSocketInbound(String subProtocol) {
- return new EchoMessageInbound();
+ return new EchoMessageInbound(byteBufSize,charBufSize);
}
private static final class EchoMessageInbound extends MessageInbound {
+
+ public EchoMessageInbound(int byteBufferMaxSize, int charBufferMaxSize) {
+ super();
+ setByteBufferMaxSize(byteBufferMaxSize);
+ setCharBufferMaxSize(charBufferMaxSize);
+ }
@Override
protected void onBinaryMessage(ByteBuffer message) throws IOException {
Modified: tomcat/trunk/webapps/examples/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/web.xml?rev=1295724&r1=1295723&r2=1295724&view=diff
==============================================================================
--- tomcat/trunk/webapps/examples/WEB-INF/web.xml (original)
+++ tomcat/trunk/webapps/examples/WEB-INF/web.xml Thu Mar 1 18:27:56 2012
@@ -359,6 +359,8 @@
<servlet>
<servlet-name>wsEchoMessage</servlet-name>
<servlet-class>websocket.EchoMessage</servlet-class>
+ <init-param><param-name>byteBufferMaxSize</param-name><param-value>20971520</param-value></init-param>
+ <init-param><param-name>charBufferMaxSize</param-name><param-value>20971520</param-value></init-param>
</servlet>
<servlet-mapping>
<servlet-name>wsEchoMessage</servlet-name>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
Re: svn commit: r1295724 - in /tomcat/trunk/webapps/examples/WEB-INF:
classes/websocket/EchoMessage.java web.xml
Posted by sebb <se...@gmail.com>.
On 1 March 2012 18:27, <fh...@apache.org> wrote:
> Author: fhanik
> Date: Thu Mar 1 18:27:56 2012
> New Revision: 1295724
>
> URL: http://svn.apache.org/viewvc?rev=1295724&view=rev
> Log:
> Allow the examples to configure the buffer on the fly
>
> Modified:
> tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java
> tomcat/trunk/webapps/examples/WEB-INF/web.xml
>
> Modified: tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java
> URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java?rev=1295724&r1=1295723&r2=1295724&view=diff
> ==============================================================================
> --- tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java (original)
> +++ tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/EchoMessage.java Thu Mar 1 18:27:56 2012
> @@ -20,6 +20,8 @@ import java.io.IOException;
> import java.nio.ByteBuffer;
> import java.nio.CharBuffer;
>
> +import javax.servlet.ServletException;
> +
> import org.apache.catalina.websocket.MessageInbound;
> import org.apache.catalina.websocket.StreamInbound;
> import org.apache.catalina.websocket.WebSocketServlet;
> @@ -28,13 +30,40 @@ import org.apache.catalina.websocket.Web
> public class EchoMessage extends WebSocketServlet {
>
> private static final long serialVersionUID = 1L;
> + private volatile int byteBufSize;
> + private volatile int charBufSize;
> +
> + @Override
> + public void init() throws ServletException {
> + super.init();
> + byteBufSize = getInitParameterIntValue("byteBufferMaxSize", 2097152);
> + charBufSize = getInitParameterIntValue("charBufferMaxSize", 2097152);
Value does not agree with below.
Is that intended?
> + }
> +
> + public int getInitParameterIntValue(String name, int defaultValue) {
> + String val = this.getInitParameter(name);
> + int result = defaultValue;
> + try {
> + result = Integer.parseInt(val);
> + }catch (Exception x) {
> + }
> + return result;
> + }
> +
> +
>
> @Override
> protected StreamInbound createWebSocketInbound(String subProtocol) {
> - return new EchoMessageInbound();
> + return new EchoMessageInbound(byteBufSize,charBufSize);
> }
>
> private static final class EchoMessageInbound extends MessageInbound {
> +
> + public EchoMessageInbound(int byteBufferMaxSize, int charBufferMaxSize) {
> + super();
> + setByteBufferMaxSize(byteBufferMaxSize);
> + setCharBufferMaxSize(charBufferMaxSize);
> + }
>
> @Override
> protected void onBinaryMessage(ByteBuffer message) throws IOException {
>
> Modified: tomcat/trunk/webapps/examples/WEB-INF/web.xml
> URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/web.xml?rev=1295724&r1=1295723&r2=1295724&view=diff
> ==============================================================================
> --- tomcat/trunk/webapps/examples/WEB-INF/web.xml (original)
> +++ tomcat/trunk/webapps/examples/WEB-INF/web.xml Thu Mar 1 18:27:56 2012
> @@ -359,6 +359,8 @@
> <servlet>
> <servlet-name>wsEchoMessage</servlet-name>
> <servlet-class>websocket.EchoMessage</servlet-class>
> + <init-param><param-name>byteBufferMaxSize</param-name><param-value>20971520</param-value></init-param>
> + <init-param><param-name>charBufferMaxSize</param-name><param-value>20971520</param-value></init-param>
Value does not agree with above.
Is that intended?
> </servlet>
> <servlet-mapping>
> <servlet-name>wsEchoMessage</servlet-name>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: dev-help@tomcat.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
Re: svn commit: r1295724 - in /tomcat/trunk/webapps/examples/WEB-INF:
classes/websocket/EchoMessage.java web.xml
Posted by Filip Hanik - Dev Lists <de...@hanik.com>.
On 3/1/2012 11:42 AM, Mark Thomas wrote:
> On 01/03/2012 18:27, fhanik@apache.org wrote:
>> Author: fhanik
>> Date: Thu Mar 1 18:27:56 2012
>> New Revision: 1295724
>>
>> URL: http://svn.apache.org/viewvc?rev=1295724&view=rev
>> Log:
>> Allow the examples to configure the buffer on the fly
> Guess you beat me to it. The config needs to be commented out by default
> though.
sure thing, I would assume for "examples" app, we'd have the most lenient, not the most safe/secure config. :)
>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: dev-help@tomcat.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
Re: svn commit: r1295724 - in /tomcat/trunk/webapps/examples/WEB-INF:
classes/websocket/EchoMessage.java web.xml
Posted by Mark Thomas <ma...@apache.org>.
On 01/03/2012 18:27, fhanik@apache.org wrote:
> Author: fhanik
> Date: Thu Mar 1 18:27:56 2012
> New Revision: 1295724
>
> URL: http://svn.apache.org/viewvc?rev=1295724&view=rev
> Log:
> Allow the examples to configure the buffer on the fly
Guess you beat me to it. The config needs to be commented out by default
though.
Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org