Author: markt Date: Wed Jun 26 13:14:44 2013 New Revision: 1496923 URL: http://svn.apache.org/r1496923 Log: Reduce decoder scanning
Modified: tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java?rev=1496923&r1=1496922&r2=1496923&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java Wed Jun 26 13:14:44 2013 @@ -269,7 +269,6 @@ public class PojoMethodMapping { private int indexPayload = -1; private boolean useDecoder = false; - public MessageMethod(Method m, List<DecoderEntry> decoderEntries) { this.m = m; @@ -519,31 +518,35 @@ public class PojoMethodMapping { MessageHandler mh = null; if (indexBoolean == -1) { + List<Class<? extends Decoder>> decoders = null; + if (useDecoder) { + decoders = config.getDecoders(); + } // Basic if (indexString != -1) { mh = new PojoMessageHandlerWholeText(pojo, m, session, - config, config.getDecoders(), params, indexString, - false, indexSession); + config, decoders, params, indexString, false, + indexSession); } else if (indexPrimitive != -1) { mh = new PojoMessageHandlerWholeText(pojo, m, session, - config, config.getDecoders(), params, - indexPrimitive, false, indexSession); + config, decoders, params, indexPrimitive, false, + indexSession); } else if (indexByteArray != -1) { mh = new PojoMessageHandlerWholeBinary(pojo, m, session, - config, config.getDecoders(), params, - indexByteArray, true, indexSession, false); + config, decoders, params, indexByteArray, true, + indexSession, false); } else if (indexByteBuffer != -1) { mh = new PojoMessageHandlerWholeBinary(pojo, m, session, - config, config.getDecoders(), params, - indexByteBuffer, false, indexSession, false); + config, decoders, params, indexByteBuffer, false, + indexSession, false); } else if (indexInputStream != -1) { mh = new PojoMessageHandlerWholeBinary(pojo, m, session, - config, config.getDecoders(), params, - indexInputStream, true, indexSession, true); + config, decoders, params, indexInputStream, true, + indexSession, true); } else if (indexReader != -1) { mh = new PojoMessageHandlerWholeText(pojo, m, session, - config, config.getDecoders(), params, indexReader, - true, indexSession); + config, decoders, params, indexReader, true, + indexSession); } else { mh = new PojoMessageHandlerWholePong(pojo, m, session, params, indexPong, false, indexSession); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org